版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、控制台创建一个博客项目rails new blogcd blograils g scaffold post title:string text:textrails g model comment post_id:integer text:textrake db:migraterails s测试:http:/localhost:3000/posts修改index.html.erbblog/app/views/posts/index.html.erb删除原有的内容,新的内容如下:1. <h1><%= post.title %></h1>
2、60; 2. 3. <%= post.text %> 4. 5. <p> 6. <%= link_to "Back", posts_path %> 7. | 8. <%= link_to "Edit", edit_post_path(post) %>
3、160;9. | 10. <%= link_to "Delete",post,:method => :delete, :confirm => "Are you sure?" %> 11. </p> 来源: 增加Comments项继续修改show.html.erbblog/app/views/posts/show.html.erb1. <h1>&
4、lt;%= post.title %></h1> 2. 3. <%= post.text %> 4. 5. <h2>Comments</h2> 6. 7. <% ments.each do |comment| %> 8. <p><%= com
5、ment.text %></p> 9. <p><%= time_ago_in_words comment.created_at %> ago </p> 10. <% end %> 11. 12. <%= form_for post,ments.build do |f| %>
6、160; 13. <p><%= f.text_area :text, :size => '40x10' %> </p> 14. <p><%= f.submit "Post Comment" %> </p> 15. <% end %>
7、 16. 17. <p> 18. <%= link_to "Back", posts_path %> 19. | 20. <%= link_to "Edit", edit_post_path(post) %> 21. | 22. <%= link_to &quo
8、t;Delete",post,:method => :delete, :confirm => "Are you sure?" %> 23. </p> 1. 修改blog/app/models/post.rb2. 增加 has_many :comments 修改blog/app/models/comment.rb增加 belongs_to :post
9、修改blog/config/routes.rb1. resources :posts do 2. resources :comments 3. end 这个时候Comment就出来了,但是如果提交comment,还会报错,因为我们还没写comment的controller打开一个新的命令行D:Rubyprojects>cd blogD:Rubyprojectsblog>rails g controller comme
10、nts create destroy打开新创建的blogappcontrollerscomments_controller.rb1. class CommentsController < ApplicationController 2. def create 3. post = Post.find(params:post_id) 4. comment =
11、160;ments.build(comment_params) 5. comment.save 6. 7. redirect_to post 8. end 9. def comment_params params.require(:comment).permit(:id, :text)end10.
12、 def destroy 11. end 12. 13. end 14. 15. 增加删除comment功能修改blog/app/views/posts/show.html.erb(增加Delete Comment链接)1. <h1><%= post.title %></h1> 2. 3. <%= post.text %> 4. &
13、#160; 5. <h2>Comments</h2> 6. 7. <% ments.each do |comment| %> 8. <p><%= comment.text %></p> 9. <p><%= time_ago_in_words comment.created_at
14、160;%> ago </p> 10. <p><%= link_to "Delete Comment", post, comment, :method => :delete, :confirm => "Are you sure?" %></p> 11. <%&
15、#160;end %> 12. 13. <%= form_for post,ments.build do |f| %> 14. <p><%= f.text_area :text, :size => '40x10' %> </p> 15. <p>
16、<%= f.submit "Post Comment" %> </p> 16. <% end %> 17. 18. <p> 19. <%= link_to "Back", posts_path %> 20. | 21. <%= link_t
17、o "Edit", edit_post_path(post) %> 22. | 23. <%= link_to "Delete",post,:method => :delete, :confirm => "Are you sure?" %> 24. </p> 修改blogappcontro
18、llerscomments_controller.rbclass CommentsController < ApplicationController def create post = Post.find(params:post_id) comment = ments.build(comment_params) comment.save redirect_to post end def destroy comment = Comment.find(params:id) comment.destroy redirect_to comment.po
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论