這里我們將增強我們的Rubyweblog,以使讀者能夠添加評論。在這個過程中,我們將了解如何處理Rails中的模型關系,因為單個帖子可" />

欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Rails和模型關系應用解析

系統 2155 0
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>
這里我們將增強我們的 Ruby web log ,以使讀者能夠添加評論。在這個過程中,我們將了解如何處理 Rails 中的模型關系,因為單個帖子可能沒有評論,也可能有多個評論。

準備工作

我打算從以前的帖子 Rails and Database Migrations 結束的地方開始。 另外 您可以在 BlogDemo.zip 的基礎上開始本文的操作 ,此壓縮文件 包含了那個帖子中完成的項目。

測試 BlogDemo 項目

  1. 打開 BlogDemo 項目。

  2. 運行項目并瀏覽 http://localhost:3000/blog 以驗證其是否正常運行。

創建評論模型

1. 切換回 Projects 選項卡 右鍵單擊 Models 文件夾并生成一個名為 Comment 的新模型。

  1. 打開 003_create_comments.rb 并將 post_id , created_at comment 列添加到上面 方法如下

    <shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 268.5pt; HEIGHT: 168.75pt" alt="" type="#_x0000_t75"><imagedata o: src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image001.png"></imagedata></shape>

    Rails和模型關系應用解析

  2. 右鍵單擊 BlogDemo 項目并選擇 Migrate Database > To Current Version

    <shape id="_x0000_i1026" style="WIDTH: 453pt; HEIGHT: 79.5pt" alt="" type="#_x0000_t75"><imagedata o: src="file:///C:/DOCUME~1/fujiang/LOCALS~1/Temp/msohtml1/01/clip_image003.png"></imagedata></shape>

    Rails和模型關系應用解析

定義模型關系

  1. has_many 關聯關系添加到 post.rb
  2. belongs_to 關聯關系添加到 comment.rb

重新生成我們的控制器框 架(scaffolding)

在我們第一次創建此項目和生成 Post 模型的 框架 我們沒有選擇覆蓋現有的博客控制器 所以沒有創建 框架 操作。這樣,我們可以自定義 框架 操作,我們將刪除 blog_controller.rb 并再次生成 框架 。注意:不要使用覆蓋選項,因為已經自定義了視圖,而且不希望放棄這些自定義:

1. 刪除 blog_controller.rb

  1. 生成 Scaffold 框架 。將 Model Name 設置為 Post Controller Name 設置為 Blog

  2. 打開最新創建的 blog_controller.rb 它現在擁有所有 框架 操作 索引、列表、顯示、新建、創建、編輯、更新和破壞

新建發表評論操作

我們將要修改顯示視圖,以使其包括可以添加評論的文本區。首先,我們將為發表評論新建一個操作。

  1. 修改顯示操作,以便將帖子 id 保存到 flash
  2. 創建下一個 post_comment 操作:

修改要發表評論的視圖

  1. 打開 show.rhtml 并在底部添加下列內容:

測試

  1. 在瀏覽器中,單擊 Permalinks 之一,查看一個條目的詳細資料。測試添加評論:
    Rails和模型關系應用解析

顯示評論

我們的博客還未顯示我們所添加的評論,現在我們來修復此問題。

  1. post_comments 實例變量添加到顯示操作,以收集評論:
  2. 將下列內容添加到 show.rhtml 以顯示評論。

    Comments

    已經存在 其放置的位置可供參考

測試

  1. 添加另一個評論:
    Rails和模型關系應用解析

完成的應用程序

BlogDemoComments.zip




Rails和模型關系應用解析


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲在线播放 | 久久婷五月综合 | 一区日韩| 日本一区二区三区四区在线观看 | 成人免费看| 国产淫视 | 亚洲成人精品在线观看 | 日韩精品视频免费在线观看 | 亚洲香蕉久久一区二区三区四区 | 草逼com| 性开放的欧美大片按摩 | a在线视频观看 | 亚洲韩精品欧美一区二区三区 | 成人免费大片a毛片 | 成人亚洲视频 | 精品视频国产 | 成人看的一级毛片 | 日韩一区二区在线观看 | 国产色在线 | 国内精品视频免费观看 | 999久久久精品视频在线观看 | 嫩草影院国产 | 免费一级毛片在线观看 | 欧美专区在线视频 | 亚洲 欧美 日韩中文字幕一区二区 | 网红和老师啪啪对白清晰 | 亚色中文| 中文字幕 国产 | 天堂久久久久久中文字幕 | 国产精品九九久久一区hh | 欧美一区二区三区不卡免费 | 超碰在线观看97 | 日韩欧美国产一区二区 | 91久久精品久久国产性色也91 | 一级毛片特级毛片免费的 | 久艹在线观看视频 | 精品视频在线免费观看 | 亚洲成人av一区二区 | 久久久精品中文字幕 | 精一区二区 | 性视频一区二区 |