【发布时间】:2020-08-22 13:03:31
【问题描述】:
我想知道我应该对此表单进行哪些修改,以便能够将新添加的问题链接到一个组,例如我现在添加的问题是你叫什么名字?我希望它链接到第一组,这样只有第一组的用户才能看到它
这是我的问题模型:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Question extends Model
{
public function answer()
{
return $this->hasMany('App\Answer')->latest();
}
public function userAnswer(){
return $this->hasOne('App\Answer')->where('user_id', Auth()->id())->latest()->first();
}
public function group()
{
return $this->belongsToMany(Group::class);
}
}
这是我的组模型:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Group extends Model
{
public function question()
{
return $this->hasMany('App\Question');
}
}
这是我的 Group_Question 表(包含 question_id 和 group_id 的数据透视表)
Schema::create('group_question', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger('group_id');
$table->foreign('group_id')->references('id')->on('groups')->onDelete('cascade');
$table->unsignedBigInteger('question_id');
$table->foreign('question_id')->references('id')->on('questions')->onDelete('cascade');
$table->timestamps();
});
最后,这是我用来将问题添加到问题表的表单:
<form class="" action="/questions/create" method="post">
@csrf
<div class="form-group">
<input type="text" name="question" value="" class="form-control" placeholder="Please Enter Question">
</div>
@can('add', \App\Question::class)
<div class="form-group">
<button type="submit" name="add" class="btn btn-success float-right">Add Question</button>
</div>
@endcan
</form>
如果您可以编辑我的来源以便能够将问题分配给数据透视表中的组,我将不胜感激。
【问题讨论】:
-
我认为您需要在添加问题表单中的组列表下拉列表
-
我怎样才能使 th3 @can(添加 2 个模型?问题和组)
标签: laravel eloquent pivot-table