通过一个 Java 应用服务器使用 JRuby on Rails 和 XML 增强 Ajax
2009-11-20 00:00:00 来源:WEB开发网
清单 9. 更新 app/views/films/edit.html.erb...
<%= error_messages_for :films %>
<% form_for(:films, :url => update_url(:id => @films.id)) do |f| %>
<p>
<b>Title</b><br />
...
<% end %>
<%= link_to 'Show', :action => 'show', :id => @films %> |
<%= link_to 'Back', :action => 'index' %>
如 清单 9 所示,使用 清单 5(update_url)中新添加的路径。这将相应地创建一个 URL,编辑表单将提交到这个 URL。最后,像 清单 9 那样更新底部的两个链接。对 show.html.erb 文件执行相同的操作(参见清单 10)。
清单 10. 更新 app/views/films/show.html.erb...
</p>
<%= link_to 'Edit', :action => 'edit', :id => @films %> |
<%= link_to 'Back', :action => 'index' %>
同样,再一次更新 new.html.erb 文件(参见清单 11)。
清单 11. 更新 app/views/films/new.html.erb...
<% end %>
<%= link_to 'Back', :action => 'index' %>
准备好所有链接和文件后,需要进行更新的最后一个文件是 films_controller.rb(参见清单 12)。
清单 12. 更新 app/controllers/films_controller.rb...
def index
@films = Films.find(:all)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @films }
end
end
...
def create
@films = Films.new(params[:films])
respond_to do |format|
if @films.save
flash[:notice] = 'Films was successfully created.'
format.html { redirect_to(films_url) }
...
def update
@films = Films.find(params[:id])
respond_to do |format|
if @films.update_attributes(params[:films])
flash[:notice] = 'Films was successfully updated.'
format.html { redirect_to(films_url) }
...
更多精彩
赞助商链接