我正在从rails2迁移到rails3,我遇到了以下错误:
未知的行动
找不到SessionLocalesController的"show"操作
这是因为我有一个link_to,里面有一个方法:post。
我之前的研究表明,我应该使用button而不是或在我的代码中添加<%= javascript_include_tag:defaults %>行,因为rails3是不引人注目的。
1。按钮不是一个解决方案,因为同样的问题发生在其他地方,所以使这个工作,因为它是将解决它。
2.<%= javascript_include_tag:defaults %> 似乎可以工作,但是它给出了这个错误:
路由错误没有匹配"/drop "的路由
我现在卡住了。提前感谢您的时间。
如前所述,下面是代码:<% for locale in (I18n.available_locales) -%>
<%= link_to image_tag("flags/" + locale.to_s + ".png", :title=>locale.to_s) + " " + locale.to_s, session_locale_path(:new_locale => locale.to_s), :method => :post %> <%=link_to t('language'), 'dropup', {:id=>"language_select", :class=>"language_select",:title => t('translate.change')} %>
<ul id="language_menu" style="display:none">
<% for locale in (I18n.available_locales) -%>
<li><%= link_to image_tag("flags/" + locale.to_s + ".png", :title=>locale.to_s) + " " + locale.to_s, session_locale_path(:new_locale => locale.to_s), :method => :post %> </li>
我已经解决了这个问题。同样的问题在stackoverflow中已经解决了很多次,但只有在找到解决方案之后我才注意到它。好的,在这里>
http://www.simonecarletti.com/blog/2010/06/unobtrusive-javascript-in-rails-3/获取jQuery并将以下内容添加到您的布局中:
<%= javascript_include_tag:defaults %><%= csrf_meta_tag %>
关于我提供的链接的更多信息