2012-04-20 49 views
0

我有一些,我试图在HAMLHAML - 如何创建链接以便它们进入正确的控制器?

=link_to("My Disclosures", "") << ' |' 
    =link_to("Create Disclosure", "#") << ' |' 
    =link_to("My Programs", "#") << ' |' 
    =link_to("Log Out", "sign_out") 

工作是什么我不知道怎么做是链接到我有不同的控制器操作的链接。

这里是我的路线:

scope :module => :mobile, :as => :mobile do 
    constraints(:subdomain => /m/) do 
     devise_for :users, :path => "", :path_names => 
       { :sign_in => "login", :sign_out => "logout", 
       :sign_up => "signup" }, 
       :controllers => {:sessions => "mobile/sessions"} 

     resources :home 

     resources :disclosures # Will have new, get, look up a disclosure 
    end 
    end 

所以我想我的log_out路径会工作,但它不工作似乎。

另外,我有这个非常简单的控制器:

class Mobile::DisclosuresController < ApplicationController 

    def new 
    Rails.logger.debug "-"*100 
    Rails.logger.debug session.inspect 
    Rails.logger.debug "-"*100 

    respond_to do |format| 

    end 
    end 

    def create 

    end 

    def destroy 

    end 
end 

但我不知道如何使HAML链接,以便它们会导致我需要去对GET和POST的各种控制器动作。任何帮助如何正确链接到控制器将不胜感激。

+1

你吃过看看[上路由的Rails指南(http://guides.rubyonrails.org/routing.html#paths-and -urls)? – 2012-04-20 16:56:18

回答

3

使用rake routes可以获取所有路线的列表,包括他们的名字。使用这些名称并追加“_path”以获取该路线的路径。

你应该能够这样披露:

=link_to "My Disclosures", disclosures_path 
+0

你好,我看着耙路的结果,但由于某种原因,我无法与这些路线联系,我认为HAML有一些问题。 – GeekedOut 2012-04-20 17:09:31

+0

你会得到什么错误?页面是否呈现?点击链接时它会做错事吗? – Larsenal 2012-04-20 17:10:52

+0

当我点击注销链接时,它只是进入一个全白的屏幕。 – GeekedOut 2012-04-20 17:12:53

相关问题