[问题] 关于Rails的new

楼主: guitarpl (撞墙期)   2013-10-15 12:23:09
新手有个疑问
一般在CRUD的时候
在new这个action,通常会写这样
def
@article = Article.new
end
然后create
def
@article = Article.new(params[:article])
@article.save
end
我有两个问题
1. 在new action 中的 Article.new,目的是为了 form_for所以才产生,
跟create action 中的@article 没有关系?
2. params[:article] 的hash,是根据new action中的 @article 来命名?
这边观念仍然有点模糊,再麻烦各位帮我解答了~感谢
作者: kusoayan (Bert)   0000-00-00 00:00:00
1. 的确是为了给 form 使用,跟 create action 中的@article 是不同个东西2. 是根据 new action 的 view 中的 form,form_for 在给定 @article 后会根据他的 model 名字产生对应的表单字段
楼主: guitarpl (撞墙期)   0000-00-00 00:00:00
请问您回答2的@article 是指new的@article 而params[:article]中的:article 是new post出来的值吗
作者: johnlinvc (阿翔)   0000-00-00 00:00:00
1, 对 2, 对
楼主: guitarpl (撞墙期)   0000-00-00 00:00:00
了解了~感谢
作者: lTERRAl (卧龙光线 \|/ \|/)   0000-00-00 00:00:00
看你怎么写 form_tag builder就完全不需先建造object使用model-based form builder 好处就是可代入物件参数你就可以预先建立默认值 再传递到form里面给使用者改像是给使用者新增一页日记 就会自动代填上面日期跟时间
楼主: guitarpl (撞墙期)   0000-00-00 00:00:00
再看了一下Guide,有比较清楚了,有些东西真的还满神奇的

Links booklink

Contact Us: admin [ a t ] ucptt.com