Mở ứng dụng ray của tôi, trên tất cả các trang, trong phần đầu có những 2 thẻ meta:Rails 4. Cách thêm authenticity_token vào biểu mẫu được hiển thị qua từng phần?
<meta name="csrf-param" content="authenticity_token" />
<meta name="csrf-token" content="027GUZBeEkmv..." />
Mở hình thức không trả lại bằng cách sử dụng một phần có được một authenticity_token
lĩnh vực ẩn
<input type="hidden" name="authenticity_token" value="D5TddQruJppDD3..." />
Nhưng trường này bị lỡ nếu tôi chỉ cần tải biểu mẫu như sau:
<%= render 'shared/comment_form' %>
Hành vi này có được mong đợi không? Tôi có nên thêm một số authenticity_token
theo cách thủ công không và nếu có thì làm cách nào để xác thực?
Edit:
chia sẻ/_comment_form.html.erb
<%= form_for([@post, @comment], :html => { :onsubmit => "validateCommentForm(event)" }, remote:true) do |f| %>
<%= render 'shared/error_messages', object: f.object %>
<div class="field">
<%= f.text_area :content, placeholder: "Add to the article. Make it be more" %>
</div>
<%= f.submit "Save", class: "btn btn-info" %>
<% end %>
Ngoài ra, thêm <input type="hidden" name="authenticity_token" id="authenticity_token" value="ANYTHING" />
mẫu mà vẫn quản lý để gửi các thông tin và tạo ra một kỷ lục mới ...
Bạn có thể gửi người dân địa phương với một phần khi được gọi như vậy: <% = render'shared/comment_form,: người dân địa phương => {: thẻ => 'kasdlfjasldfj'}% – bkunzi01
'cái form_for' xây dựng hoặc 'form_tag 'thường chăm sóc việc thêm một trường ẩn với mã thông báo xác thực, bạn có thể hiển thị cho chúng tôi biểu mẫu 'shared/comment_form' không? – sled