亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

SQLSTATE[23000]:違反完整性約束:1048 Laravel 中的列“user_id”

SQLSTATE[23000]:違反完整性約束:1048 Laravel 中的列“user_id”

PHP
HUX布斯 2023-07-15 17:44:42
我使用 vue 在 laravel 中創建了一個待辦事項應用程序。我有兩個表:users 和 todos;每個用戶都有很多這樣的待辦事項:User.php 模型:class User extends Authenticatable {    protected $fillable = [        'name', 'email', 'password',    ];    public function todos()    {        return $this->hasMany(            Todos::class,            'user_id',            'user_id'        );    }}All.php模型:class Todos extends Model{    //    protected $fillable = ['title', 'completed', 'user_id'];    public function user()    {        return $this->belongsTo('App\User');    }然后我定義了這條路線:Route::post('/v1/todo', 'todosController@addTodo');這是我來自 todosController 的 addTodo: public function addTodo(Request $request)    {        $uid = Auth::user()->id;        //dd($uid);        $todoCreated = new Todos([            'title' => $request->input('title'),            'completed' => 0        ]);        $user = User::find($uid);        //dd($user);        //dd($todoCreated);        dd($user->todos()->create([            'title' => $request->input('title'),            'completed' => 0,        ]));}當我發送表單數據時,它向我顯示此錯誤:Illuminate\Database\QueryException SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'user_id' cannot be null (SQL: insert into todos  (title , Completed , user_id , Updated_at , Created_at ) values (darya, 0, ?, 2020-07-06 12:17:45, 2020-07-06 12:17:45))。我是 Laravel 的新手,感謝您的幫助!
查看完整描述

1 回答

?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

您在關系中傳遞了錯誤的參數。


public function todos()

{

    return $this->hasMany(

        Todos::class,'user_id','id'

    );

}



return $this->hasMany(Todos::class, 'foreign_key', 'local_key');


查看完整回答
反對 回復 2023-07-15
  • 1 回答
  • 0 關注
  • 140 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號