[RUBY] [Rails] Étendre UrlHelper

Je veux définir mon propre UrlHelper

C'est une bonne idée de créer une classe qui inclut Rails.application.routes.url_helpers.


class MyUrlResolver
  class << self
    include Rails.application.routes.url_helpers
  end

  #Aide définie à l'origine
  def self.custom_users_path(user)
    if user.admin?
      admin_users_path
    else
      users_path
    end
  end
end

avec ça,

> MyUrlResolver.admin_users
=> "/admin_users"
> MyUrlResolver.users_path
=> "/users"

En plus du UrlHelper standard

> MyUrlResolver.custom_users_path(admin_user)
=> "/admin_users"
> MyUrlResolver.custom_users_path(normal_user)
=> "/users"

Vous pouvez également utiliser votre propre UrlHelper.

Recommended Posts

[Rails] Étendre UrlHelper
[Rails g. Erreur]
Notions de base sur les rails
Rails Examen 1
[Rails] first_or_initialize
rails tutry
À propos des rails 6
Fondation Rails
tutoriel sur les rails
rails tutry
tutoriel sur les rails
[Rails] concevoir
rails tutry
tutoriel sur les rails
Conseils de rails
méthode des rails
tutoriel sur les rails
Rails Revue 2