0

Routes.rb

scope :module => :abc do
  namespace :old_namespace do
    resources :posts 
  end
end

URL に new_namespace が表示されるように、を に変更するにはどうすればよいold_namespaceですか。new_namespace*_path および *_url メソッドで以前のルートを使用したビューが多すぎます。今のところ変更したくありません。これを行うRails Wayはありますか。

私が試したこと、

scope :module => :abc do
  namespace :new_namespace,:as => :old_namespace do
    resources :posts
  end
end

これにより、必要なURLの変更が得られますが、また、エラーが発生します uninitialized constant Abc:NewNamespace

これは私が定数を持っていることを期待していますが、名前空間のリソースで :controller オプションに似Abc:NewNamespaceた古い定数を使用したいのですがAbc:OldNamespace

4

2 に答える 2

1

あなたは単にこれを行います:

scope module: 'abc/OldNamespace' do
  resources :posts, path: 'new_namespace/posts'
end

ここであなたは言っています、

  1. 使用するabc::OldNamespace
  2. new_namespace/postsリソースの URL パスとして使用しますposts

これも機能するはずです。機能しない場合は許可してください

于 2013-08-22T12:58:02.257 に答える
0

これを使った、

namespace :new_namespace,:as => :old_namespace, :module => :old_namespace do

これは現在機能しています。

于 2013-08-22T12:48:17.660 に答える