我有拉勒维尔雄辩的Collage班
class Collage extends Model
{
/**
* Get the User that owns this Collage.
*/
public function user()
{
return $this->belongsTo('App\User');
}
}拼贴迁移模式
Schema::create('collages', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->string('name')->nullable();
$table->timestamps();
});和User
class User extends Authenticatable
{
/**
* Get all Collages that belongs to this User.
*/
public function collages()
{
return $this->hasMany('App\Collage');
}
}但当我在小叮当上这么做
$user = App\User::find(1)->first();
$collage = new App\Collage;
$collage->name = 'Collage';
$collage->user = $user;
//and save
$collage->save();抛出错误QueryException
General error: 1 table collages has no column named user发布于 2016-08-17 06:39:37
Change
$collage->user = $user到
$collage->user_id = $user->id发布于 2016-08-17 06:10:34
更新架构以建立关系,
Schema::create('collages', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
$table->string('name')->nullable();
$table->timestamps();
});这样,Laravel雄辩者就会自动提及这段关系。
https://stackoverflow.com/questions/38988935
复制相似问题