1
我想實現一對多的關係在laravel 許多關於我的表有自定義主鍵名不IDLaravel一個以自定義主鍵不工作
我已經設置$primartKey
屬性很好,但關係亙古不變似乎工作。
activities
|act_ID|act_acc_ID|.........
categories
|acc_ID|.......
這裏是我的模型
class Adventure extends \Eloquent {
/**
* @var string $table the name of the table
*/
protected $table = 'activities';
/**
* @var string $primaryKey the primary key of the table
*/
protected $primaryKey = 'act_ID';
/**
* @var bool timestamps updated_at and created_at columns flag
*/
public $timestamps = false;
/**
*
*/
public function category(){
$this->belongsTo('Category','act_acc_ID');
}
}
class Category extends \Eloquent {
/**
* @var string $table the name of the table
*/
protected $table = 'categories';
/**
* @var string $primaryKey the primary key of the table
*/
protected $primaryKey = 'acc_ID';
/**
* @var bool timestamps updated_at and created_at columns flag
*/
public $timestamps = false;
public function adventures(){
$this->hasMany('Adventure','act_acc_ID');
}
}
現在,當過我嘗試從類別訪問來自冒險類別或冒險,我得到
關係方法必須返回 式照亮對象\ Database \ Eloquent \ Relations \ Relation
我在這裏做錯了什麼? 有很多冒險,其類別爲15,所以我嘗試 我嘗試Categories::find(15)->adventures
也試過Categories::find(15)->adventures()
是的,我相信因爲我們犯了一些愚蠢的錯誤(我自己做過),你應該休息一下,休息一下,然後重新開始新鮮的大腦。當出現問題並找不到解決方案時,只需休息一下,它可以幫助:-) –
我已經從'CI'切換,有一天我浪費了3個小時來找出一個錯誤,我的重定向沒有在屏幕上顯示任何內容,但我在前一天發現它,那是因爲我沒有在重定向時使用'return'關鍵字,它必須像'return Redirect(...)'重定向::(...)'。我花了一些時間來改變我在CI中使用的練習。祝一切順利 :-) –