2017-01-06 3 views
0

나는이 입력을 가지고있다. 나는 언어를 위해 어떤 텍스트를 입력한다. 이제는 언어 코드 [de]가있는 경우에만 필수 입력란을 설정하려고합니다. 내가 이것을 좋아할 때 나는 모든 언어에 대한 필수 필드를 얻는다. 어떤 제안을 어떻게하면이 문제를 해결할 수 있습니까?기본 언어로만 필수 필드를 설정하는 방법은 무엇입니까?

@foreach ($languages as $language) 
     <input type="text" id="text-title" name="article_title[{{$language->code}}]" value="" class="form_input" /> 
    @endforeach 

    public function rules() 
    { 
     return [ 
      'article_title[de]'    => 'required:articles', 
      'slug'       => 'required|unique:articles', 
      'article_intro[de]'    => 'required:articles', 
      'article_content[de]'   => 'required:articles', 
      'article_category[de]'   => 'required|exists:categories,id', 
     ]; 
    } 

편집 :

나는이 솔루션을 발견, 그것은 나를 위해 작동합니다. https://laracasts.com/discuss/channels/general-discussion/laravel-5-dynamic-form-validation?page=1

답변

0

당신이 좋아하는 URL이있는 경우가 reuquest와 langauge을 확인할 수 있습니다 www.xxxxx.com/de 또는 LANG 값과보다 숨겨진 입력을 전달할 수 있습니다

<input type="hidden" name="lang" value="de"> 

요청 :

if(request()->segment(2) == 'de') { 
    return [ 
     'article_title[de]'    => 'required:articles', 
     'slug'       => 'required|unique:articles', 
     'article_intro[de]'    => 'required:articles', 
     'article_content[de]'   => 'required:articles', 
     'article_category[de]'   => 'required|exists:categories,id', 
    ] 
} else { 
    return []; 
} 

또는 숨겨진 입력을

if(request()->lang == 'de') { 
    return [ 
     'article_title[de]'    => 'required:articles', 
     'slug'       => 'required|unique:articles', 
     'article_intro[de]'    => 'required:articles', 
     'article_content[de]'   => 'required:articles', 
     'article_category[de]'   => 'required|exists:categories,id', 
    ] 
} else { 
    return []; 
} 
+0

는 작동하지 ... 내가 입력도 데이터 필드에 그것은 필요한 – None

+0

라고 말할 수 있습니다. return return []을 추가하고 dd (request() -> segment (2) == 'de')를 검사하여 메소드의 시작 부분에서 코드를 확인하십시오. 간다 ... – DokiCRO

관련 문제