At a high level, the intent of resource
is to declare that only one of these resources will ever exist. For example:
resource :profile, :only => [:edit, :update]
As a user, I should only be able to update my own profile. I should never be able to edit other users' profiles, so there's no need for a URL scheme like /users/1/profile/edit
. Instead, I use /profile/edit
, and the controller knows to use the current user's ID rather than the ID passed in the URL (since there is none).
That's why you don't get an index
action with resource
: there's only one resource, so there's no sense in "listing" them.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…