rails中对应关系

1,建立文章对应的评论表,一对多的关系

rails generate model Comment comment:string body:text article:references

其中article:references是建立与文章对象关联外键

2,在文章的模型中添加has_many :comments。表示一篇文章对应多条评论

3,添加路由---嵌套路由

resources :articles do

  resources :comments

end

4,redirect_to @article的原理

返回的是localhost:blogDemo/articles/1页面,会重新定向到@article这个对象的show页面

5,build和new

save:rails中的save其实是create_or_update,新建或修改记录!不一定是新建,切记
new :只是在内存中新建一个对象,操作数据库要调用save方法。
create = new + 执行sql。
build:与new基本相同,多用于一对多情况下。

6,在页面局部视图的循环

<%= render @article.comments %>

render 方法会遍历 @article.comments 集合,把每个评论赋值给一个和局部视图同名的本地变量,在这个例子中本地变量是 comment,这个本地变量可以在局部视图中使用。

7,在页面局部视图的新增嵌套循环

<%= render "comments/form" %>

第二个 render 方法的参数就是要渲染的局部视图,即 comments/form。Rails 很智能,能解析其中的斜线,知道要渲染 app/views/comments 文件夹中的 _form.html.erb 模板

8,文章中的关联删除,需要在文章的模型中加入关联删除的字段

dependent: :destroy


你可能感兴趣的:(rails中对应关系)