2014-04-28 18 views
5

benim Raylar uygulama içinde statik sayfalar yönetmek için bu çok basit bir denetleyici var: Ben kendi adını dönmek için bir görünüm şablonu nasıl alabilirimRails görünümleri ilişkili eylem adlarını döndürmek için nasıl kullanılır?

class PagesController < ApplicationController 

    def home 
    end 

    def features 
    end 

    def pricing 
    end 

end 

, bu yüzden böyle bir şey yapabilirsiniz:

# pricing.html.erb 

<h1><%= my_own_name.capitalize %></h1> 

# --> "Pricing" 

Yardımlarınız için teşekkürler. Yani

+0

'params [: action]', ancak muhtemelen sınıf değişkeni oluşturmalısınız. – zishe

cevap

7

4.3 Routing Parameters

params karma daima içerecektir./Routes.rb

get 'pages/:page_name => 'pages#show' 

kontrolörleri/

yapılandırma: İçerik statik ise

<h1><%= action_name.capitalize %></h1> 
+0

mükemmel çözüm, bilmiyordum. – zishe

+2

Çok basit! Teşekkürler! – Tintin81

3

: controller ve: aksiyon tuşları, ancak bu değerleri erişmek için yerine yöntemleri controller_name ve action_name kullanmalıdır

class PagesController < ApplicationController 

    def pricing 
     @action = params[:action] 
    end 

    end 


    # pricing.html.erb 
<h1><%= @action.capitalize %></h1> 
0

Birincisi, bunu genellemek ve böyle bir şey yaparsınız iyi pratice olduğunu düşünüyorum pages_controller.rb

class PublicPagesController < ApplicationController 
    def show_content 
    render(params[:page_name]) 
    end 
end 

Ve vi ew paramsları [: page_name] kullanabilirsiniz.

İlgili konular