2016-06-24 4 views
1

私のニーズに合わせてsails.jsアセットフローを修正しました。私は公共資産を/ assets/distに保管しています。sails.js - パブリックフォルダを.tmp/publicと変更する

デフォルトの "/.tmp/public"の代わりに自分のパブリックフォルダを使用するようにセイルアプリケーションを設定する簡単な方法はありますか?

私は/config/local.jsでこれを設定するオプションがあると知っていますが、これは現在のマシンだけに関連することはなく、git repoに含まれるようにこれを別の場所に設定します。

あなたがここに異なった答えのカップルを見つけることができます

答えて

2

https://github.com/balderdashy/sails/issues/709あなたのconfig/local.jsファイルにこれを追加して

は、最も簡単な方法のように見える:

path: {tmp: ..., public: ...} 

更新:

デフォルトpathsの設定は、node_modules/sails/lib/app/configuration/index.jsに移動して見つけることができます。あなたがpaths.jsと呼ばれるあなたのconfigフォルダに新しいファイルを作成し、そこにこのコードを追加する場合は、あなたがより多くのデフォルトのパスを追加/上書きすることができます

// Built-in path defaults 
paths: { 
    tmp: path.resolve(appPath, '.tmp') 
}, 

:あなたは、そのファイルの一番下の近くにスクロールすると、あなたはこれを見ますあなたの帆のアプリケーション:

module.exports.paths = { 
    "tmp" : "assets/dist", 
    "public" : "assets/dist" 
}; 
+0

感謝。私は他の方法を探しています。 config/local.jsはリポジトリに含まれていないため、この環境をすべての環境で変更したいと考えています。 – rerich

+0

コアファイルの編集を試みることができます。あなたのプロジェクトのルートから 'node_modules/sails/lib/app/configuration/index.js'に行き、最後にappPath' .tmp'に 'tmp'を割り当てるパスオブジェクトがあります。 – Nitsew

+0

そのファイルを私に指摘してくれてありがとう。私は最終的にこの問題を解決することができました。私は新しい設定ファイル(config/paths.js)を 'module.exports.paths = {" tmp ":" assets/dist "、" public ":" assets/dist "}'という名前で作成しました。 。私はそれを受け入れることができるようにあなたの答えを更新してくださいできますか? – rerich

1

前の答えは明確sails.jsの最新バージョンで動作しません。 According this.sailsrcを使用しない限り、パスを変更することはできません。

例:返信用

{ 
    "paths": { 
     "tmp": "dist/assets", 
     "public": "dist/assets" 
    } 
} 
関連する問題