我为Laravel安装了Voyager。 我不了解这种关系以及为什么每次都会给我一个下拉菜单。
这是我所做的:
如您所见,我创建了一个“ Coupon”,“ belongsTo”,“ users”关系
在优惠券表中,我创建了一个user_id列。
我想要的是在下一页中显示的用户ID,以便在用户创建优惠券时将其保存到数据库中。 问题是,当我以用户身份登录并创建优惠券时,会看到一个下拉菜单,而不是用户的ID:
知道为什么要这么做吗?
谢谢。
答案 0 :(得分:1)
假设“优惠券”作为表的模型,则可以更改保存功能,以使用当前经过身份验证的用户ID填充默认值“ belongsTo”:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Coupon extends Model
{
public function save(array $options = [])
{
if(!isset($this->belongsTo)){
$this->belongsTo = \Auth::user()->id;
}
parent::save();
}
}
我希望这能解决您的问题。
回答您的实际问题,在Voyager Bread中没有可用的下一页,并且voyager中的关系将始终创建一个下拉列表,如https://docs.laravelvoyager.com/core-concepts/bread-builder#relationships文档中明确提到的那样