2016-06-12 48 views
10

Tôi có biểu mẫu mà người dùng có thể điền để bán nhà của họ. Và đối với một trong các đặt, người dùng phải chọn thời tiết sẽ là "Cần bán" hoặc "Cho thuê". Nếu nó là Cần bán, hai trường nhập giá sẽ xuất hiện, và nếu nó là Cho thuê, thì một số trường nhập giá khác sẽ xuất hiện dựa trên jQuery.required_if Xác nhận Laravel 5

Vấn đề của tôi là tôi muốn các trường giá được yêu cầu, NHƯNG ví dụ nếu tôi chọn "Cho thuê", sau đó tôi gửi biểu mẫu của mình, nó sẽ báo lỗi cho trường " Bán "trường đầu vào là bắt buộc, ngay cả khi nó nằm trong phần" Cho thuê ".

Tôi biết có required_if trong Laravel, nhưng tôi không biết cách sử dụng điều đó. Đây là yêu cầu của tôi cho một tài sản.

<?php 

namespace App\Http\Requests; 

use App\Http\Requests\Request; 

class PropertyRequest extends Request 
{ 
    /** 
    * Determine if the user is authorized to make this request. 
    * 
    * @return bool 
    */ 
    public function authorize() 
    { 
     return true; 
    } 

    /** 
    * Get the validation rules that apply to the request. 
    * 
    * @return array 
    */ 
    public function rules() 
    { 
     return [ 
      'list_type' => 'required', 
      'sale_price' => 'required', // <-- maybe like: required_if:value 
      'rent_price' => 'required', 
     ]; 
    } 
} 

/****************** EDIT *********************** ****/

những gì tôi có bây giờ:

public function rules() 
    { 
     return [ 
      'list_type' => 'required', 
      'sale_price' => 'required_if:list_type:For Sale', 
      'rent_price' => 'required_if:list_type:For Rent', 
    } 

Nhưng tôi nhận được lỗi này khi tôi nộp Form:

My Error

Trả lời

25

giả LIST_TYPE đó là tên của chọn hộp c thả trôi mồi từ (giá trị: bán hoặc cho thuê)

sử dụng nó theo cách này

"sale_price" => "required_if:list_type,==,selling" 

điều này có nghĩa là gì? :

giá bán chỉ được yêu cầu nếu giá trị của LIST_TYPE bằng selling

làm tương tự cho rent_price

chỉnh sửa

public function rules() 
{ 
    return [ 
    'list_type' => 'required', 
    'sale_price' => 'required_if:list_type,==,For Sale', 
    'rent_price' => 'required_if:list_type,==,For Rent' 
} 
+0

Giống như ở bài viết của tôi, tôi chỉnh sửa nó dưới đây. – David

+0

kiểm tra chỉnh sửa của tôi, đã xảy ra lỗi khi thử ngay bây giờ, nếu điều này không hoạt động, hãy thêm, ==, như phần "sale_price" => "required_if: list_type, ==, selling" ' –

+1

** chỉnh sửa ** của bạn Cảm ơn bạn – David

Các vấn đề liên quan