私はpolimorphic_pathとそれを使っています。このメソッドは、定義されていないルートヘルパーを必要とします。どのように私は(通常の方法のように) "model_name_path、model_name_url etc"のように使用される独自のルートヘルパーを定義できますか?レール3に独自のルーティングヘルパーを定義する方法は?
5
A
答えて
2
私は_pathの可能な答えを知っていますが、同じことは_urlのために働いていません。誰も知っている理由は?
# at the bottom of config/routes.rb
module ActionView::Helpers::UrlHelper
def model_name_path model, args={}
# your implementation
end
end
4
この解決策は私に役立ちました。
config/routes.rb
ファイルの最後にこのコードを追加してください。 MyApp
をアプリケーションの名前に置き換えてください。
MyApp::Application.routes.named_routes.module.module_eval do
def model_name_path(*args)
# Your code here
end
def model_name_url(*args)
# Your code here
end
end
MyApp::Application.routes.named_routes.instance_eval do
@helpers += [:model_name_path, :model_name_url]
end
これらのカスタムメソッドは、コントローラ、ビュー、およびテストで使用できます。
+1
:Rails.application.routes.named_routes.url_helpers_module.module_eval do ... – luckyjazzbo
関連する問題
- 1. レール3のアレイ未定義方法
- 2. SysCacheを独自の設定ファイルに設定する方法は?
- 3. 独自のロギングレベルの独自のログメソッドを作成する方法
- 4. レール3:ペーパークリップ:未定義のメソッドのロゴ
- 5. レールのマイグレーションにブール値フィールドを定義する方法
- 6. カスタムアローンをレールにアップロードする方法3
- 7. matlabで独自の確率分布関数を定義する
- 8. 独自の例外クラスを定義するベストプラクティス?
- 9. レールでカスタムパスを定義する方法は?
- 10. LWP :: RobotUAの独自のrobots.txtルールを指定する方法
- 11. レールを作る方法3 I18n翻訳は自動的に安全ですか?
- 12. 独自のジオコーディングサーバーを設定する方法
- 13. レールのルートを再定義する方法4
- 14. ユーザー定義クラスの出力をレールで表示する方法
- 15. 独自のフラッシュデバッガの作成方法は?
- 16. jsレールをレンダリングする方法3
- 17. オブジェクトを独自のクラスにキャストする方法は?
- 18. 各ジャスパーファイルを独自のディレクトリにコンパイルする方法は?
- 19. AWS RDSスナップショットを独自のS3バケットにエクスポートする方法は?
- 20. Android用に独自のPDFビューアを作成する方法は?
- 21. fontWithName:size:独自のフォントをプロジェクトにインポートする方法は?
- 22. 独自の定義で使用される変数?
- 23. jsfiddleで自分のjs関数を定義する方法は?
- 24. 文字列ArrayListを独自の定義済みオブジェクトのArrayListに変換する
- 25. Qtを使用した独自のライブラリ:未定義参照
- 26. Tmuxのコピーモード:独自のコマンドを作成する方法は?
- 27. 私はdonot独自の他のウェブサイトを記入する方法
- 28. 未定義のメソッド[]のための `safe_concat」:レール3
- 29. 未定義のメソッドエラーのレール3太陽黒点の検索
- 30. PreferenceActivityのために独自のデータストレージバックエンドを実装する方法
ああ、私はそれも_urlのために働くと思う、ちょうど私がコントローラからではなくビューから_urlを呼び出していたと思う。 – Ben
私はuser_linksというヘルパーメソッド名を持っているとします。私はポストモデルを持っています。私のコードは、次のようになります: - 〜module ActionView :: Helpers :: UrlHelper def post_name_path post、args = {} #あなたの実装 - >これには何がありますか? end end〜 – boddhisattva
申し訳ありませんが、適切なコードブロックを使用しようとしましたが、何らかの形でコメントセクションで正しく取得できませんでした。レール4の – boddhisattva