2

我对 Rails 很陌生,正在寻找指导。

我在 Rails 上构建我的投资组合,我知道 Rails 的基本规则是“不要重复自己”。

我可以创建一个单独的布局页面来详细显示我的工作,但生成多个页面,每个页面都有自己的内容。例如:www.mywork.com/nike 与 www,mywork.com/pepsi 的布局相同但内容不同。如果我这样做,我如何以它们的唯一名称提取某些图像/文本。

还是我只是创建静态页面并使用相同的样式表?

谢谢你的帮助!

4

1 回答 1

0

看看这个 rails cast - http://railscasts.com/episodes/117-semi-static-pages

我同意您正在尝试做的并不是真正的“轨道方式”,但是每当我创建诸如关于我们和隐私页面的页面时,我都会使用上面链接中的技术,这些页面通常有一段文本并且可能将来会更新。

简而言之,你要做的是创建一个名为 content_page 的模型,它有一个链接(字符串)、内容(文本)和标题(字符串)。然后你创建一个只有一个显示动作的控制器,看起来像这样 -

   class ContentPagesController < ApplicationController

     def show
       @content_page = ContentPage.find_by_permalink(params[:link])
       raise ActiveRecord::RecordNotFound, "Page not found" if @content_page.nil?
     end
   end

在您对表演动作的看法中,您可以说 -

   @content_page.content
   @content_page.heading

获取该记录的内容和标题(或您分配给 ContentPage 的任何其他属性)。

然后在你的路线中,你可以在你的 routes.rb 底部有这样的东西(你把它放在底部,因为它是一条贪婪的路线) -

   match ':link' => 'content_pages#show' 

所以现在你可以说 www.mywork.com/nike 它将找到以 nike 作为链接的内容页面。我很简短,因为值得一看的是轨道演员。

就像我说的,上述技术只适用于基本内容页面,你应该为每个页面都有一个控制器,即使它只有一个索引操作:)

于 2012-05-21T11:17:22.410 回答