我正在使用laravel 4.2,並且在db中使用屬性is_active
。 當我嘗試訪問該模型屬性: $model->is_active
我收到以下錯誤:如何訪問laravel模型中的is_ *屬性?
Relationship method must return an object of type Illuminate\Database\Eloquent\Relations\Relation
所以問題是如何訪問該屬性? 如果可能,請不要在數據庫中重命名此字段,因爲這是生產中已有的數據庫。
這裏是我的模型類:
class Position extends \Eloquent {
protected $table = "hr_positions";
protected $fillable = ['slug', 'info_small', 'info_full', 'is_active', 'start_date', 'end_date', 'tags', 'user_create_id', 'user_update_id'];
use \MyApp\Core\StartEndDateTrait;
public function postulations(){
return $this->hasMany('Postulation', 'position_id', 'id');
}
}
最新通知:
所有在那裏我創造我的實體在頁面上此錯誤ocurrs。在轉發到頁面之前控制器我做: $position = new \Position();
,然後,例如,下面的代碼產生的錯誤,以及: dd(($position->getAttribute('is_active')));
,但如果我更換$position = new \Position();
$position = \Position::first();
錯誤消失了?
這到底是怎麼回事?????
我已經嘗試了再次錯誤:'關係方法必須返回一個對象的類型照明\數據庫\ Eloquent \ Relations \ Relation' – gandra404
@ gandra404你有一個''isActive()''''''''''''類嗎? – Kaspars
這裏有一些事實: - 我沒有方法isActive()在'位置'類 - 我有數據庫字段'is_active':https://i.imgur.com/IkriM6C.png – gandra404