html - 如何链接到 html.erb 页面?

标签 html css ruby-on-rails ruby

我对 Rails 相当陌生,在将新的 html.erb 页面链接到时遇到一些问题 我的导航标签。

我使用脚手架和projects_controller.rb创建了一个应用程序。我当然有显示我的元素路径的index.html.erb,它还包含我所有元素的表格。 我有我的新建、编辑、销毁、更新和展示。显示包含指定元素的projects_path。好吧,现在我尝试做的是使用projects_controller.rb 创建(2)个新页面。所以我去添加了 def denquent 和 def close。两者都模仿 def 索引,因为我希望这两个页面具有完全相同的功能。我创建了 (2) 个新的 html.erb 页面,名称为 delinquent.html.erb 和 close.html.erb。我希望这些页面的行为就像索引页面一样,但只显示拖欠和已关闭的元素,而不是像我在 index.html.erb 上显示的所有可用元素。我的导航栏、导航栏内部、导航栏、导航右拉都已就位。我有 (3) 个链接可供使用,只是不知道如何将我新创建的页面链接到最后 2 个链接:

  <li><%= link_to "Active Projects", projects_path></li>
  <li><%= link_to "Delinquent Projects", '#' %></li> # I want to link this to delinquent.html.erb
  <li><%= link_to "Closed Projects", '#' %></li> # I want to link this to closed.html.erb

最佳答案

在你的 Controller 中

def index
  @project = Project.all
end

def delinquent
  @projects = Project.delinquent_projects
  render :template => :index
end

def closed
  @projects = Project.closed_projects
  render :template => :index
end

您还可以将index.html的内容提取到一个partial(除了标题),并在相应的 View 中渲染该partial

在 config/routes.rb 中(在文件顶部)

match 'projects/delinquent' => "projects#delinquent", :as => :delinquent_projects
match 'projects/closed' => "projects#closed", :as => :closed_projects

在 View 中

<li><%= link_to "Active Projects", projects_path %></li>
<li><%= link_to "Delinquent Projects", delinquent_projects_path %></li>
<li><%= link_to "Closed Projects", closed_projects_path %></li>

关于html - 如何链接到 html.erb 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20748084/

相关文章:

html - Flexbox 垂直和水平居中

css - 使用 Bootstrap Glyphicons

ruby-on-rails - ruby 休息客户端: make it never timeout?

ruby-on-rails - 将 master 推送到 heroku 时出现问题

ruby-on-rails - rails : Omniauth - "The parameter app_id is required"

html - 为什么页面样式被外部 CSS 文件覆盖?

javascript - 如何显示jquery日期选择器?

html - CSS 使 flex 包裹的元素不超过其 sibling 的宽度

html - 用两个盒子简单响应?

c# - 以编程方式更改链接颜色