3

我正在嘗試爲半靜態頁面動態創建方法。但是,下面的代碼似乎不起作用。我收到一個wrong number of arguments (0 for 1)錯誤。在控制器(RAILS)中動態創建方法

class PagesController < ApplicationController 

    pages = %w[ page1 page2 page3 ] 

    pages.each do |page|   
    define_method(page) do |a| 
     #do nothing 
    end 
    end 
end 
+0

哪條線/方法是什麼? –

+0

define_method(page)do | a | – user2012677

+0

另外,你想用這個做什麼?它可能有一個更簡單的解決方案。 –

回答

5

您是說,該方法:page1:page2:page3太)有一個參數(a),但是控制器動作沒有參數,他們收到來自params哈希表值。

編輯:只需刪除你的代碼中|a|

define_method(page) do 
    #do nothing 
end 
+0

完美,謝謝! – user2012677

2

塊不帶參數:

class PagesController < ApplicationController 

    pages = %w[ page1 page2 page3 ] 

    pages.each do |page|   
    define_method(page) do 
     #do nothing 
    end 
    end 
end 
相關問題