【发布时间】:2015-02-07 17:38:43
【问题描述】:
我试图让它以典型的belongsTo 关系工作。但是它一直说该列未在模型中设置,即使在实际数据库中查看它也是如此。
我已尝试查看源代码并尝试了许多方法来绕过此问题,但似乎没有任何作用。
public function modifiedBy()
{
return $this->belongsTo('\Modules\Users\Model\User', 'modified_by');
}
public function createdBy()
{
return $this->belongsTo('\Modules\Users\Model\User', 'created_by');
}
这是模型内部的代码,我使用 PSR-0 来定义模块,更好地分割逻辑(没有问题)但是使用它会出错
Undefined property: \Modules\Module\Model\CurrentModel::$modified_by
这是来自将一些初始信息推送到数据库中的种子。
$user = Sentinel::findById(1);
$model = new CurrentModel;
$model->modifiedBy()->associate($user);
$model->save();
这基本上就是它的结合方式,我已经尝试了一段时间来找出问题所在,但我称之为空白。有什么想法吗?
【问题讨论】:
-
不是说表中没有列,而是对象上没有属性。这对于
Eloquent\Model来说几乎是不可能的,因此请检查堆栈跟踪并找出错误发生的位置。 -
我正在使用 artisan 来获取此错误,尚未将此功能构建到应用程序中,因为我没有任何测试数据。有没有办法通过工匠获取堆栈跟踪?
-
确保您在运行 artisan 的环境中拥有
debug => true。 -
它被添加了,所以如果 artisan 在调试模式下显示堆栈跟踪,这是否意味着这是堆栈中唯一的错误?