я видел кусок кода Rails для маршрутизации, как это:Rails routing: Что только: [] делать здесь?
namespace :my do
resource :auth_states, only: [] do
collection do
get 'signed_in'
end
end
resource :password, only: [:edit, :update]
# And all the actions a logged in user can perform under "my" namespace...
# ...
end
Якобы это приложение работает с devise
и cancancan
камнем. Я думаю, что часть :auth_states
проверяет, был ли пользователь подписан или нет, прежде чем он сможет выполнить все приведенные ниже действия. Однако я немного смущен only: []
. Разве это не означает, что никаких действий для :auth_states
? Как это работает. Означает ли это, что посетитель не сможет посетить auth_states
снаружи, но само приложение все равно сможет его использовать? Есть only: []
широко используемый шаблон в Rails?
Благодаря
Мое замешательство я думал, если он пуст, тогда * все действия * не будут разрешены. Итак, вы имеете в виду, что здесь ничего не происходит, потому что он пуст ... Тогда есть причина, по которой разработчик включил его в код? –
Да, его можно установить пустым или лучше не использовать, если вам не нужно указывать определенные действия. Возможно, разработчик мог обеспечить гибкость. – sansarp
Я вижу. Благодарю. , –