6
私はNodejsを使い慣れていません。複数のオブジェクトをエクスポートするには?Nodejs:複数のオブジェクトをエクスポートするには?
Sequelize = require('./models').Sequelize
アドバイスをありがとう:D
を、私は何かのようにSequelize
オブジェクトを使用したい
Page = require('./models').Page
:例
fs = require("fs")
Sequelize = require 'sequelize'
module.exports = (config)->
sequelize = new Sequelize(
config.database.name
config.database.username
config.database.password
config.database.options
)
fs.readdirSync(config.root+'/server/models/').forEach (file)->
module.exports['Page'] = sequelize.import(config.root + '/server/models/' + file) # --> export this model
sequelize # --> export this object
のために私のようなPage
モデルのものを使用したいです
更新: 解決次の方法:
fs = require("fs")
Sequelize = require 'sequelize'
module.exports = (config)->
@Sequelize = new Sequelize(
config.database.name
config.database.username
config.database.password
config.database.options
)
fs.readdirSync(config.root+'/server/models/').forEach (file)->
@Page = sequelize.import(config.root + '/server/models/' + file)
@
が、私は別の問題を抱えています。モデルを動的に割り当てる方法は?ただ、オブジェクトリテラルでラップ
fs = require("fs")
Sequelize = require 'sequelize'
module.exports = (config)->
@Sequelize = new Sequelize(
config.database.name
config.database.username
config.database.password
config.database.options
)
# @Page = sequelize.import(config.root + '/server/models/page')
fs.readdirSync(config.root+'/server/models/').forEach (file)->
str = file.replace('.coffee', '')
model = str.charAt(0).toUpperCase() + str.slice(1)
@[model] = @Sequelize.import(config.root + '/server/models/' + file) if ~file.indexOf('.coffee')
@
'=' 'でなければなりません:'でのCoffeeScriptで
あなたは空のオブジェクトを作成したい場合を除き、インデントを使用しますオブジェクトリテラル:) – robertklep
もちろん。ありがとう、@robertklep – Slavo
お返事ありがとうございます。私の更新を参照してください:D – Zeck