簡體   English   中英

laravel hasManyThrough() 關系創建

[英]laravel hasManyThrough() relation create

假設以下關系:

命令:

public function messages(){

    return $this->hasManyThrough('App\Models\Message', 'App\Models\Conversation', 'order_id', 'conversation_id', 'id', 'id');
}

對話:

public function messages()
{
    return $this->hasMany('App\Models\Message')->latest();
}

我嘗試從訂單實例創建一個新的消息,例如:

    //create message & assign message to conversation
    $message = new Message([
        'user_id'   => Auth::id(),
        'text'      => $request->messageText,
    ]);

    $order->messages()->save($message);

結果:

Call to undefined method Illuminate\Database\Eloquent\Relations\HasManyThrough::save()

有沒有一種簡單的方法可以直接通過order實例創建新的message實例?

更新

我也試過這個:

$order->messages->user_id = Auth::id();
$order->messages->text = $request->messageText;
$order->messages->is_admin = true;

$order->push();
$order = new Order; 
$message = new Message([
    'user_id'   => Auth::id(),
    'text'      => $request->messageText,
]);

$order->messages()->add($message);

檢查這個東西會起作用嗎

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM