php - Laravel Livewire 验证 - required_without_all 和 required_without 不起作用

标签 php laravel laravel-validation laravel-livewire

我有一个 livewire 组件:

  class Cards extends Component
  {
   use WithFileUploads;

   public $question;
   public $answer;

   public $questionImage;
   public $questionImageOrigin;
   public $answerImage;
   public $answerImageOrigin;

   public $questionAudio;
   public $questionAudioOrigin;
   public $answerAudio;
   public $answerAudioOrigin;

   public function render()
   {
       return view('livewire.cards');
   }

现在我想创建并验证一张卡:

   public function createCard()
{
    $this->validate([
        'answerImage' => 'nullable|image|max:3000',
        'questionImage' => 'nullable|image|max:3000',
        'question' => 'required_without_all: questionImage, questionAudio',
        'answer' => 'required_without: answerImage, answerAudio',
        'questionAudio' => 'nullable|file|mimeTypes:audio/mpeg|max:3000',
        'answerAudio' => 'nullable|file|mimeTypes:audio/mpeg|max:3000'
    ]);

但这不起作用。 当我插入某些内容(图像或音频)时,出现错误:

The answer field is required when answer image / answer audio is not present.

所以 - 我想这不起作用。还是我错了? 也许我必须使用另一种语法? 但我在文档中找不到任何内容。

请帮忙。

最佳答案

您已在规则中添加空格

'answer' => 'required_without: answerImage, answerAudio',

改成这样

'answer' => 'required_without:answerImage,answerAudio',

还有

'question' => 'required_without_all: questionImage, questionAudio',

到此

'question' => 'required_without_all:questionImage,questionAudio',

关于php - Laravel Livewire 验证 - required_without_all 和 required_without 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63179984/

相关文章:

javascript - 如何在 laravel 框架中更新表值而无需表单和 javascript

php - PDO 获取与行计数

javascript - PHP json_encode 数组到 javascript 关联数组

php - Laravel 所属查询

php - 如何从 Laravel 中的第一个表访问第三个表

php - LARAVEL 5.0 + 单元测试 - 不同包的 assertSessionHasErrors

javascript - 来自窗口模式的 PHP POST 数组

laravel - 在用户登录页面后添加路由

php - Laravel5 - 自定义验证器 - 未定义的 setPresenceVerifier()

php - 如果 Laravel 中的值不为空,如何验证输入字段