S.C*_*ode 4 php relationship laravel eloquent
我有 MorphTo - MorphMany 关系,这样地址可以属于用户或组织。我不断收到错误消息
调用未定义的方法 App\HTTP\Resources\User::singularLabel()
我尝试使用静态方法,但这似乎没有帮助。文件的代码如下。
谢谢
地址.php 模型
public function addressable()
{
return $this->morphTo('addressable');
}
public function getHashidsConnection()
{
return 'address';
}
Run Code Online (Sandbox Code Playgroud)
User.php(模型)
public function organisation()
{
return $this->belongsTo('App\Organisation');
}
public function addresses()
{
return $this->morphMany('App\Address', 'addressable');
}
Run Code Online (Sandbox Code Playgroud)
地址.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;
}
Run Code Online (Sandbox Code Playgroud)
用户.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')
];
}
Run Code Online (Sandbox Code Playgroud)
Fab*_*Fab 10
您确定在下面的代码中使用 nova 资源而不是 Address.php(资源)中的用户和组织模型吗?
MorphTo::make('Addressable')->types([
User::class,
Organisation::class,
])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2461 次 |
| 最近记录: |