ブログ モジュールを使用して Web サイトを作成しています。ブログ投稿は、下書きまたは公開のいずれかです。
公開された投稿は編集できなくなり、下書きは表示できなくなります (編集のみ)。
現在、次のように定義されたリソースがあります
resources :posts, :path => "blog" do
collection do
get 'drafts'
end
end
を使用して下書きリストにアクセスし、 を使用blog/draftsして新しい投稿を作成し、 を使用してblog/new下書きを編集できblog/:id/editます。
ただし、新しい下書きを使用して作成し、使用blog/drafts/newして編集したいblog/drafts/:id
この新しいスキームを使用するには、、、およびルートをnew定義する必要があります。およびルートは非常に単純に見えます。ただし、アクション名の部分を削除するためにルートを処理する方法がわかりません。createeditupdatenewcreateedit
また、デフォルトのルート定義を見ているとactionpack-3.2.9/lib/action_dispatch/routing/mapper.rb、次のように見つかりました。
member do
get :edit if parent_resource.actions.include?(:edit)
get :show if parent_resource.actions.include?(:show)
[...]
end
:editRails がと:showルートをどのように区別し、それに応じて URL をマッピングするかがわかりません。
ありがとう