Laravel 背包

Laravel Backpack

我需要帮助。我目前正在使用 Laravel 背包,但遇到以下问题:我有一个名为 Media 的字段,该字段有两种行为,一种是上传图片,另一种是写 URL,问题是它只允许我创建一次字段。在 laravel 背包中有没有办法创建 2 个具有相同名称的不同字段?

我或多或少想要达到这样的目标:

CRUD::addField([ 'name' => 'url_media', 'label' => 'url_media', 'type' => 'upload', ]);

CRUD::addField([ 'name' => 'url_media', 'label' => 'url_media', 'type' => 'url', ]);

由于 HTML 规范,您不能在一个表单中有两个同名的输入。我的意思是……你可以。但是请求中只会发送最后一个。

如果不想同时显示两个字段,可以使用条件 (if/else) 显示 upload 字段或 url 字段.

否则,另一种方法是为第二个字段选择一个假名称(例如... url_media_link),然后在您的模型中使用 Laravel Mutator,在本例中为 setUrlMediaLinkAttribute() 随心所欲地操作模型属性。