Điểm:0

Đặt giá sản phẩm thương mại tối thiểu

lá cờ cn

Tôi muốn đặt giá tối thiểu có thể được nhập vào biểu mẫu thêm/chỉnh sửa sản phẩm của Thương mại. Nếu người dùng nhập giá thấp hơn, một lỗi sẽ được hiển thị khi họ nhấp vào nút lưu.

Tôi đang sử dụng đoạn mã sau để đạt được điều đó.

function THEME_form_commerce_product_default_add_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
  $form['#validate'][] = '_custom_formvalidation_number_price_validate';
}
    
function _custom_formvalidation_number_price_validate(&$form, FormStateInterface $form_state) {
  if ($form['variations']['widget']['entity']['price']['widget'][0]['#default_value'] = ['number' => 2,'currency_code' => 'EUR'] > 2) {
    $form_state->setErrorByName('price', t('Giá ít nhất phải bằng 2'));
  }
}

Tôi cần kiểm tra giá trị đã nhập, không phải giá trị mặc định. Yếu tố nào là chính xác?

griz avatar
lá cờ jp
Bạn nên viết một mô-đun đơn giản chứa chức năng xác thực tùy chỉnh của mình. Mô-đun cũng phải chứa hàm 'hook_form_alter' nhắm mục tiêu biểu mẫu của bạn và thêm tham chiếu đến hàm xác thực của bạn để tạo thành mảng '#validate'. https://drupal.stackexchange.com/questions/183685/how-do-i-add-a-custom-validation-handler-to-an-current-form-field https://www.drupal.org/forum /support/module-develop-and-code-questions/2017-02-11/form-custom-validation-after-hook
lá cờ cn
Điều này rất hữu ích nhưng tôi vẫn không thể đặt giá trị giá tối thiểu.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.