1

こんにちは、ノードとセイルの初心者であり、同時にコードでいくつかの標準を実行しています。Sails.jsでは、現在これを持っています。たとえば、以下のとおりです

api/
  controllers/
    TestController.js
  services/
    TestServices.js

ほとんどの場合、この URL 形式のみを使用してビューにアクセスできます。

http://localhost/test/
http://localhost/test/<action>

ファイル名にいくつかのプレフィックスを追加すると、次のようになります。

api/
  controllers/
    PrtestController.js
  services/
    PrtestServices.js

権利による URL は、次の方法でアクセスできる必要があります。

http://localhost/prtest/
http://localhost/prtest/<action>

質問:

1) すべてのコントローラーとサービスのファイル名にプレフィックスを追加した場合、次の方法で URL にアクセスできますか?

http://localhost/test/
http://localhost/test/<action>

プレフィックスを追加せずに?

次のようなものを編集してこれを実現するために、config/routes.js を構成することを考えていました。

'/test': {
    controller: 'PrtestController',
    action: '<action>'
},
'/test/*': {
    controller: 'PrtestController'
} 

正直なところ、私はまだ試していません (コードに大きな変更を加える前の単なるアイデアです。そうしないと、めちゃくちゃになる可能性があります)。

2)これをsails.jsに含めることは可能ですか?

PrtestController.js  >   prTestController.js

前もって感謝します!

編集された質問

ところで、次の値を持つコントローラーにデフォルトのセイル構成を使用しています。

blueprints: {
actions: true,
rest: true,
shortcuts: true,
prefix: '' 
... 

例: (私の routes.js は次のようになります)

'/test' : 'prTestController',
'/test/action2' : 'prTestController:action2',
'/test/action3' : 'prTestController:action3',
'/test/action4' : 'prTestController:action4',
'/test/action5' : 'prTestController:action5',
'/test/action6' : 'prTestController:action6',
'/test/action7' : 'prTestController:action7',
'/test/action8' : 'prTestController:action8',
'/test/action9' : 'prTestController:action9'

URL に /test または /test/any_action がある場合に、コントローラー prTestController または prTestController:any_action がそれぞれ自動的に使用される可能性はありますか?

#2については、そうです。

どうもありがとう!

4

1 に答える 1

1
  1. はい、カスタム ルーティングconfig/routes.jsを行うには、を編集する必要があります。コントローラーの名前がの場合、(アクティブ化されている場合) 設計図は自動的に へのルートを設定します。これをオーバーライドするには、ブループリントをオフにして、いくつかのカスタム ルートを追加します。ルートに関するセイルズ ドキュメント
    PrtestControllerhost/prtest/

    Sails の魔法を理解するのが難しい場合は、すべての設計図をオフにするか、少なくとも別の設定で遊ぶことをお勧めします。これにより、ルートとアクションを手動で構成する必要があります。ブループリントの機能とその理由を理解したら、使用する場合はオンに戻します。

    これは、ブループリントとルートをより詳細に説明するビデオ チュートリアルです。

  2. よく分からない。小文字のコントローラー名が許可されているかどうか疑問に思いますか? もしそうなら、はい、それは問題ではないはずです。

于 2014-04-22T06:49:44.100 に答える