如果您希望验证回到注册页面,您应该使其成为一个动态页面。
公共目录中的静态页面的另一个问题是您的链接全部变为硬编码,因此如果您的应用程序永远不在域根目录(即example.com/app),那么该静态文件中的链接可能会出错。
此外,如果您需要将图像移动到不同的主机,您将失去image_tag的优势。
只有使用静态资源,如果你知道事情不会改变,你需要速度。如果你的动态页面太慢,你可以缓存它们,否则你可能做错了什么。
UPDATE:(解决第一个评论)
不能使用轨道的功能,当你在公共文件夹建立你的网址。如果您需要在您的JavaScript中使用rails生成的URL,请从rails视图页面触发它们。 一般情况下,我会做到以下几点:
在head标签application.html.erb:
<%= yield :headScripting %>
然后在被触发的JavaScript查看页面:
<% content_for :headScripting do %>
jQuery().ready(function() {
jQuery("#placeholder").load("<%= summary_model_path(@model) %>");
});
<% end %>
这将加载模型控制器动作summary
的摘要文本。这可能会render :text => "summary"
或render :layout => false
取决于您的需求
如何从JavaScript中引用动态页面?我打算为此使用jQuery,所以我将在application.js中追加我的事件处理程序。 – Vitaly 2010-04-09 02:29:20