我有一个MorphTo - MorphMany关系,这样一个地址可以属于一个用户或一个组织。我一直在犯错误
调用未定义方法App\HTTP\User::singularLabel()
我试图使用静态方法,但这似乎没有帮助。这些文件的代码如下。
谢谢
Address.php模型
public function addressable()
{
return $this->morphTo('addressable');
}
public function getHashidsConnection()
{
return 'address';
}User.php (模型)
public function organisation()
{
return $this->belongsTo('App\Organisation');
}
public function addresses()
{
return $this->morphMany('App\Address', 'addressable');
}Address.php (资源)
public function fields(Request $request)
{
return [
ID::make()->sortable(),
Text::make('line_1'),
Text::make('line_2'),
Text::make('line_3'),
Text::make('post_code'),
Boolean::make('is_primary'),
MorphTo::make('Addressable')->types([
User::class,
Organisation::class,
])
];
}
public static function singularLabel()
{
return Address::class;
}User.php (资源)
public function fields(Request $request)
{
return [
ID::make()->sortable(),
Gravatar::make(),
Text::make('Name')
->sortable()
->rules('required', 'max:255'),
Text::make('Email')
->sortable()
->rules('required', 'email', 'max:254')
->creationRules('unique:users,email')
->updateRules('unique:users,email,{{resourceId}}'),
Password::make('Password')
->onlyOnForms()
->creationRules('required', 'string', 'min:8')
->updateRules('nullable', 'string', 'min:8'),
MorphMany::make('Addresses')
];
}发布于 2020-07-29 15:57:23
您确定在下面的代码中使用的是Address.php (资源)中的用户和组织的nova资源而不是模型吗?
MorphTo::make('Addressable')->types([
User::class,
Organisation::class,
])发布于 2021-07-02 21:20:55
MorphTo::make('Addressable')->types([
UserResource::class,
OrganisationResource::class,
])https://stackoverflow.com/questions/59736923
复制相似问题