如何创建从欢迎页面到另一个ruby页面的链接

时间:2016-07-14 18:06:28

标签: ruby-on-rails ruby blogs contact railsapps

目前,我的导航栏内容如下所示:

<li><%= link_to "Portfolio", projects_path, :class => "header" %></li>
<li><%= link_to "Articles", posts_path, :class => "header" %></li>
<li><%= link_to 'Contact',  contact_path, :class => "header" %></li>

前两个链接工作正常,但最后一个链接没有。 我如何推荐正确?联系页面只是一个简单的静态页面(没有项目或推送的博客)。

这是我的routes.rb

Rails.application.routes.draw do
  resources :contact
  get 'contact/index'
  resources :posts
  resources :projects
  get 'welcome/index'
  root 'welcome#index'
end

这是控制器

class ContactController < ApplicationController
    def index
    end
end

如果我看一下rake路线,我就明白了:

contact_index GET    /contact(.:format)           contact#index
              POST   /contact(.:format)           contact#create
  new_contact GET    /contact/new(.:format)       contact#new
 edit_contact GET    /contact/:id/edit(.:format)  contact#edit
      contact GET    /contact/:id(.:format)       contact#show
              PATCH  /contact/:id(.:format)       contact#update
              PUT    /contact/:id(.:format)       contact#update
              DELETE /contact/:id(.:format)       contact#destroy
              GET    /contact/index(.:format)     contact#index

我是红宝石的新人,我期待着提供帮助。提前谢谢!

2 个答案:

答案 0 :(得分:2)

将第三行替换为以下行:

<li><%= link_to 'Contact', contact_index_path, class: "header" %></li>

答案 1 :(得分:0)

从路线文件中删除get 'contact/index'并尝试。

当您添加contact

时,您已经有resources :contact索引的路径