2010-10-24 10 views

Répondre

2

Vous utilisez des ressources, mais ont une action non-REST, vous devez donc ajouter la jointure action pour la route avec le verbe HTTP approprié:

map.resources :users, :member => { :join => :get } 
0

Lieu:

def show 
end 

dans votre UserController.

Pour être certain:

app/controllers/users_controller.rb

def join 
end 

app/views/utilisateurs/join.html.erb

config/itinéraires. rb

resources :users 
+0

mais/utilisateur/join Je veux utiliser l'action 'join' dans le usercontroller, pas l'action 'show'. – Blankman

+0

Je suggère simplement que vous corrigiez l'erreur que vous obtenez en premier. Peut-être que votre réponse sera plus visible une fois que vous le ferez. – tinifni

+1

Désolé si ma réponse manque. Je suis encore nouveau à RoR. J'offre juste le peu que je sais pour essayer et aider. J'espère que vous trouverez votre réponse! – tinifni

5

Re: pourquoi l'action de jointure n'est-elle pas trouvée?

Pour répondre à votre question spécifique, ce qui se passe, c'est que vous voulez avoir une action "join" pour votre modèle d'utilisateur.

Votre problème est que vous n'avez pas défini un itinéraire correspondant à l'url http://localhost:3000/user/join

La ligne resources :user dans vos itinéraires fichier ne définit des itinéraires pour les sept verbes de repos standard/actions:

index

, nouvelles, créer, afficher, modifier, mettre à jour, détruire

Voir: http://apidock.com/rails/ActionController/Resources/resources

Ajouté: fixer, vous aurez besoin d'ajouter une voie explicite ou générique. Routing docs

Ajouté: Re: pourquoi le message d'erreur s'affiche-t-il? Pour être ultra précis, le sélecteur de route "GET/usr /: id" (créé par votre appel de ressource) est utilisé pour sélectionner l'action SHOW pour la ressource Utilisateur. La valeur: id est définie sur "rejoindre". Puisque vous n'avez pas de méthode Show dans votre contrôleur, c'est l'erreur que vous voyez.

+2

Le chemin générique Larry mentionne ceci: 'resources: user member do get 'rejoindre' fin fin' – Jeremy

Questions connexes