模型Question
和Choice
之间的关系是多对多的。
Nova/Question
:
public function fields(Request $request)
{
return [
...
BelongsToMany::make('Choices')
]
}
哪个显示在屏幕下方
我想从视图中隐藏视图和编辑选项。只允许用户附加/分离选择。
我尝试使用下面的方法创建QuestionPolicy
,但该方法无效。如果我使用ChoicePolicy
的{{1}}和update
方法,它将隐藏create
资源中的视图和编辑选项。
Choice
如何实现对关系隐藏视图和编辑选项?
更新
public function updateChoice(User $user, Question $question)
{
return false;
}
模型
Question
class Question extends Model
{
...
/**
* The choices that belong to the question.
*/
public function choices()
{
return $this->belongsToMany('App\Choice');
}
}
模型
Choice
答案 0 :(得分:0)
希望这对您有帮助
public function fields(Request $request)
{
return [
...
BelongsToMany::make('Choices')->except('edit','view');
]
}
答案 1 :(得分:0)
您可以在政策中将其退回,更新内容同样如此
Data[] mapPojos = new GsonBuilder().registerTypeAdapter(Key.class, ds).create()
.fromJson(x, Data[].class);
答案 2 :(得分:0)
我认为您需要将以下代码放入QuestionPolicy中:
2x5 + 1x3
0
希望此帮助。 https://nova.laravel.com/docs/1.0/resources/authorization.html#authorizing-attaching-detaching
答案 3 :(得分:0)
在您的QuestionPolicy中定义
public function attachChoice(User $user, Question $question, Choice $choice)
{
return ! $question->choices->contains($choice);
}
从此github issue开始,请查看更多详细信息