我对 Rails 很陌生,正在寻找指导。
我在 Rails 上构建我的投资组合,我知道 Rails 的基本规则是“不要重复自己”。
我可以创建一个单独的布局页面来详细显示我的工作,但生成多个页面,每个页面都有自己的内容。例如:www.mywork.com/nike 与 www,mywork.com/pepsi 的布局相同但内容不同。如果我这样做,我如何以它们的唯一名称提取某些图像/文本。
还是我只是创建静态页面并使用相同的样式表?
谢谢你的帮助!
我对 Rails 很陌生,正在寻找指导。
我在 Rails 上构建我的投资组合,我知道 Rails 的基本规则是“不要重复自己”。
我可以创建一个单独的布局页面来详细显示我的工作,但生成多个页面,每个页面都有自己的内容。例如:www.mywork.com/nike 与 www,mywork.com/pepsi 的布局相同但内容不同。如果我这样做,我如何以它们的唯一名称提取某些图像/文本。
还是我只是创建静态页面并使用相同的样式表?
谢谢你的帮助!
看看这个 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 作为链接的内容页面。我很简短,因为值得一看的是轨道演员。
就像我说的,上述技术只适用于基本内容页面,你应该为每个页面都有一个控制器,即使它只有一个索引操作:)