我已经阅读了其他人关于此的帖子,但我仍然无法解决我遇到的问题。所以我想我会问。
我有一个用于上传头像的表单。此表单从 :controller => 'board', :action => 'show' 显示
<% form_tag("avatar/upload", :multipart => true ) do %>
<%= error_messages_for :avatar %>
...
这很好用。问题是我无法显示错误消息。
上传由 :controller => 'avatar', :action => 'upload' 处理
if params_posted?(:avatar)
image = get_image(params)
@board = Board.find(session[:board_id])
@avatar = Avatar.new(@board.id, image)
if @avatar.save
# ???
end
end
现在这是我遇到麻烦的部分。我知道我不能做 redirect_to 或者我会丢失 error_messages_for @avatar 并因此不会收到错误消息,但是做渲染是个问题,因为我有一些路线。
在我的 routes.rb 我有以下内容:
map.connect 'board/celebrating/:id/:name', :controller => 'board', :action => 'show'
所以我想知道的是如何再次显示位于 :controller => 'board', :action => 'show' 的板并显示@avatar 的错误消息?
对不起,如果这看起来微不足道。对我来说,这是一场斗争。先感谢您。
米切尔