Я использовал form_tag для доступа к действию из другого контроллера в одном из моих представлений Rails.Это вызвало проблемы при рендеринге сообщения об ошибке.Я также использую JQuery, который потенциально может вызывать проблемы.Я читал, что form_tag не привязан к модели, так что это может означать, что что-то вроде validates_uniqueness_of может не работать.Был бы признателен за помощь в понимании проверки с form_tag!
Для справки, вот мой контроллер:
# app/controllers/posts_controller.rb
def create
@post = Post.new
@post.text = params[:text]
@post.user_id = current_user.id
@post.save
respond_to do |format|
if @post.save
format.js
format.html { redirect_to(username_path(:username => current_user)) }
format.xml { render :xml => @post, :status => :created, :location => @post }
else
format.html { render :action => "new" }
format.xml { render :xml => @post.errors, :status => :unprocessable_entity }
end
end
end
И мой взгляд (на мою модель пользователя)
# app/views/users/show.html
<% form_tag({:controller => "posts", :action => "create"}, :method => "post", :class => 'newpost') do %>
<%= error_messages_for :post %>
<%= text_field_tag :text, params[:text] %>
<%= image_submit_tag("../images/add.png", :border => 0, :class => "submitadd") %>
%lt;% end %>