语法与Rails3中与块的link_to:远程=>真实,包括:类:身份证
问题描述:
为了上帝的爱,我一直在敲打我的头在这几个小时。使用rails3 rc,1.9.2。语法与Rails3中与块的link_to:远程=>真实,包括:类:身份证
我试图创建提交一个Ajax请求,使用的参数,一个class和id的link_to一,需要一个块,所以我可以插入周围的名字span标记。与许多谷歌搜索一样,文档绝对无助。下面是我到目前为止有:
<%= link_to(
:url=>{
:controller => 'themes', :action => 'remove_tag',
:entity_id => entity_id, :theme_id => theme_id,
:entity => entity, :element_id => element_id, :parent_id=>parent_id
},
:remote => true,
:id => "theme-tag-#{entity}-#{entity_id}",
:class => "tag") do %>
<span class='subtract'><%= tag %></span>
<% end %>
生成的URL看起来是这样的:
<a href="/explore/index/theme-tag-user-3?url[controller]=themes&url[action]=remove_tag&url[entity_id]=3&url[theme_id]=16&url[entity]=user&url[element_id]=filter-contributor-3&url[parent_id]=filter-contributors&remote=true&class=tag">
测试描述
我不能正常显示文本“测试描述符”实际上是正确地包含在范围内;代码格式化在这里失败了一点,但是,href是错误的,没有课程或ID,并且下坡继续滚动
如果我不需要该块,我可以只添加名称而不必指定:url => {...}(如果off,则抛出一个异常块,去图),然后按照:remote => true,:id =>“whatever”,:class =>“blah”它的工作原理。我究竟做错了什么?因为我一般都是新手,所以我也想明白为什么这个语法必须差异很大?我是说真的,感谢上帝,你不必写很多像这样的链接在一个web应用程序...提前;-)
感谢
答
原来你要做的url_for(.. 。)而不是:url => {...},它都按预期工作。
答
只要把wkhatch的评论放在这里,就可以很好地格式化。
<%= link_to(
url_for(:controller=>'themes',
:action=>'remove_tag',
:entity_id=>entity_id,
:theme_id=>theme_id,
:entity=>entity,
:element_id=>element_id,
:parent_id=>parent_id),
:remote=>true,
:id=>"theme-tag-#{entity}-#{entity_id}") do %>
<span class='subtract'></span><%= tag %>
<% end %>
您能否在一个例子中说明如何使用url_for和link_to? – simo 2012-07-13 04:20:16
@SamirSabri这里是我结束了使用作为这个问题的答案代码: '主题',:动作=> 'remove_tag',:ENTITY_ID => ENTITY_ID,:theme_id => theme_id,:entity => entity,:element_id => element_id,:parent_id => parent_id),:remote => true,:id =>“theme-tag - #{entity} - #{entity_id}”)do%> \t \t \t的 \t \t \t \t \t \t 我是新来在这一点上轨,所以我可能会以不同的格式,但主要观点仍然有效。希望有所帮助 – wkhatch 2012-07-13 09:24:40