2017-04-05 3 views
0

Je suis au point dans le tutoriel Hartl (chapter 11.2.1) où vous créez une activation de compte Mailer et je me demandais, pourquoi sommes-nous en train de créer une URL « modifier » comme ceci:Pourquoi utiliser une URL de "modification" pour un e-mail d'activation de compte dans un publipostage?

<%= edit_account_activation_url(@user.activation_token, email: @user.email) %> 

http://www.example.com/account_activations/q5lt38hQDc_959PVoo6b7A/edit 

Il semble que " edit "n'est pas le bon mot pour ça. Pour moi, il serait plus logique d'utiliser une méthode appelée quelque chose comme "activer" à la place "modifier".

Pourquoi Hartl utilise-t-il "edit"? Je suppose que c'est parce que c'est une façon RESTful de le faire? Tels que dans ce edit_user_url(user).

Voici les itinéraires que le logiciel de messagerie est utilisé:

resources :account_activations, only: [:edit] 

Quelqu'un peut-il expliquer pourquoi il utilise peut-être « modifier »?

+0

nous couldnot accéder à ce tutoriel. Cela demande une connexion. Pouvez-vous nous dire quelles routes vous avez utilisées? – bunty

+0

J'ai trouvé une version publique du livre et mis à jour le lien. Également modifié la question pour ajouter les routes. –

+1

'edit' suit simplement les conventions REST. Vous pouvez éditer vos routes et les nommer comme vous voulez, tant que vous savez ce que vous faites. Peut-être que cette étape supplémentaire était un peu en dehors des intentions du chapitre –

Répondre

1

Bien pratique l'activation du compte, le change. Donc, du point de vue du repos, vous l'éditez.

Si vous voulez être plus prolixe en termes de but, vous pourriez créer un alias pour cette voie pour activer en utilisant as méthode :as documentation

+0

Ok. C'est ce que je soupçonnais. Je suppose que je pensais que je ne suis pas en train d'éditer le "compte d'activation", je suis en train d'éditer l'utilisateur. Je change le booléen sur le modèle d'utilisateur appelé «activer» de faux à «vrai» sur le modèle d'utilisateur. Donc, pour moi, il semble que je modifie l'utilisateur, pas "account_activation". –