0

次のようにルートを定義するにはどうすればよいですか。

  • /users (すべてのユーザーを表示)
  • /users/:user_id (特定のユーザーを表示)
    • /users/:user_id/projects (特定のユーザーのプロジェクトを表示)

現在、これを構成しています:

@resource 'users', path: '/users/:user_id', ->
    @route 'projects'

しかし問題は、アクセスできないことです/users(そのようなルートはありません)。はUsersIndexRoute を参照してい/users/:user_idます。

4

1 に答える 1

1

あなたは次のようなことをするのが最善でしょう:

this.resource('users', function() {
    this.resource('user', {path: '/:user_id'}, function() {
        this.resource('projects');
    });
});

これにより生成されます(または、定義した場合は使用します):

  • UsersRouteURLを含む/usersUsersControllerおよびUserすべてのユーザーをロードするモデル。
  • UserRouteURLを使用した/users/:user_id、および個々のユーザーの詳細をロードするUserController同じモデル。User
  • ProjectsRouteURL/users/:user_id/projectsを持つ 、およびProjectsControllerユーザーProjectプロジェクトをロードするモデル。

これを実際に示すJSBin の例

ルートの定義と、Ember が期待するもの (または生成するもの) の詳細については、こちらを参照してください。

于 2013-07-31T12:56:44.573 に答える