1
我寫了application_helper.rb,它基本上是我的Rails應用程序的全局幫助器。而爲了讓我使用的網址助手像post_url(post)
,Rails的逼我包括我的application_helper.rb頂部驗證碼:錯誤的參數數量(3代表0..1)當我包含「Rails.application.routes.url_helpers」
include Rails.application.routes.url_helpers
我包括像這樣的一行代碼:
include Rails.application.routes.url_helpers
include ActionView::Helpers::TextHelper
module ApplicationHelper
....
end
突然間,當我在瀏覽器中加載我的應用程序,所有的link_to
代碼似乎被拋相同類型的錯誤是這樣的:
wrong number of arguments (3 for 0..1)
這裏是一個錯誤的截圖:
這是我的一個link_to
代碼示例:
<%= link_to root_path do %>
<img src="https://googledrive.com/host/xxx/xxx-logo-small.png" class="" />
<% end %>
而且它不是僅此鏈接,導致一個錯誤,但我的應用程序中的所有鏈接!那麼這個include Rails.application.routes.url_helpers
有什麼問題?爲什麼會造成這樣的錯誤?我怎麼能使用它並解決它在同一時間造成的問題?
謝謝!
嘗試,包括他們內,您的輔助模塊,而不是它上面。 – Raffael
從未聽說過Rails強制某人'包含Rails.application.routes.url_helpers'以便能夠在你的'Helper'模塊中使用Rails助手。它究竟如何影響你? – jibiel
@Raffael我試過了。但是,我也有一個rake文件,取決於這個application_helper。當我把它們放入INSIDE並嘗試運行我的rake文件時,我遇到了一個錯誤。所以這就是爲什麼我把它們放在外面。但再次,當我把它們放在外面時,我得到了像你在這個線程中看到的錯誤 –