Ruby :post @post 是等同的吗?

shangrenzhidao · 2014年03月17日 · 最后由 leekelby 回复于 2014年03月17日 · 1882 次阅读

ink_to 'Edit', edit_post_path(:post) ,为什么这里即可以用@post 又可以用:post

在 view 里面等同?

#1 楼 @pynix 对 是 view erb 格式

尽量用 :post,有时候我们会忘了 new,虽然很少见。

这是我一次踩坑记录: 为什么要在 form_for 里把 @xxx 改为 :xxx

<%= form_for(@order_status_history, :url => {:controller => 'orders', :action => 'show'}) do |f| %> 会有 undefined method 'model_name' for NilClass:Class 报错。

而用 :order_status_history 则没问题。

其它情形:http://stackoverflow.com/questions/11360704/undefined-method-model-name-for-nilclassclass

需要 登录 后方可回复, 如果你还没有账号请 注册新账号