在雄辩的laravel

时间:2015-12-07 18:29:12

标签: php laravel laravel-5 eloquent

我想创建一个按用户分类的帖子,我的表

user
id_user

category
id_category

post
id_post
user_id
category_id

这是我的模特

//User.php
public function post()
{
    return $this->hasMany('App\Post');
}
//Post.php
public function user()
{
    return $this->belongsTo('App\User');
}
//Category.php
public function post()
{
    return $this->hasMany('App\Post');
}

Request

//CreatePostRequest.php
class CreatePostRequest extends Request {

public function authorize()
{
    return true;
}
public function rules()
{
    return [
        'title' => 'required:min',
        'description' => 'required',
        'category_list' => 'required'
    ];
}

}

我试过了

$post= Auth::user()->post()->create($request->all());

但有错误“SQLSTATE [23000]:完整性约束违规:1452无法添加或更新子行:外键约束失败(laravelprojposts,CONSTRAINT posts_category_id_foreign FOREIGN KEY(category_id)REFERENCES categoriesid_category)ON DELETE CASCADE)(SQL:插入poststitledescription,{{ 1}},user_idupdated_at)值(可以购买的东西Lorem ipsum dolor sit amet4,2015-12-08 06:47:42,2015-12-08 06:47:42,?, ?))”。 怎么解决这个?抱歉英文不好

1 个答案:

答案 0 :(得分:0)

创建发布时出现此错误的原因是数据库中没有与您传递给 id_category 相匹配的类别创建()即可。