์ผ,
๋ง์ด๊ทธ๋ ์ด์ ๋ฐ ์ฟผ๋ฆฌ์ ๋์ผํ DB ์ฐ๊ฒฐ์ ์ฌ์ฉํ๊ณ ์ถ์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ง์ด๊ทธ๋ ์ด์ ํ๊ฒฝ ์ธ๋ถ์์ knexfile.js์์ knex๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ฐฉ๋ฒ์ ๋ฌธ์์์ ์ฐพ์ ์ ์์ต๋๋ค.
knexfile ๋ฐ require ( 'knex') ๋ฌธ์์ ๋์ผํ db ์ฐ๊ฒฐ์ ์ง์ ํ๋ ๋์ knexfile.js์์ knex๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น? ๋ ๊ณณ ๋ชจ๋์์ ๊ทธ๊ฒ์ํด์ผํ๋ ๊ฒ์ ๋ถ์์ง ๋๋์ ๋๋ค.
์๋ง ๋ฌธ์์์ ๋ญ๊ฐ ๋น ์ก์ ๊ฒ์ ๋๋ค -.-
๊ฐ์ฌ,
-Michal
// database.js
'use strict';
var knex = require('knex')(require('./knexfile')[process.env.NODE_ENV]), // Selects the correct DB config object for the current environment
bookshelf = require('bookshelf')(knex);
module.exports = bookshelf;
์ด ๊ฐ์?
Bookshelf.js ๋ชจ๋ธ์ ๊ตฌ์กฐํํ๋ ๋ฐฉ๋ฒ
์, ํ ์ ์์ง๋ง ์์ฒด ๋ฌธ์ ๊ฐ์๋ ๊ฒ์ ์๋๋๋ค.์ด ํน์ ํ์ผ ์ด๋ฆ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ํ๋ ์ฝ๋ฉํ๋ ๊ฒ์ด ๋ค์ ๋ถํธํฉ๋๋ค. knexfile์ knex์ ํน๋ณํ ์๋ฏธ๊ฐ ์๊ธฐ ๋๋ฌธ์ knex๊ฐ ์์ฒด ๊ตฌ์ฑ ํ์ผ์ ์ฌ์ฉํ๋๋ก ์ ์ํ๋ ๋ฐฉ๋ฒ์ด ์๊ธฐ๋ฅผ ๋ฐ๋์ต๋๋ค. (์ด๋ฅผ ์ํํ๋ ๊นจ๋ํ ๋ฐฉ๋ฒ์ ์ฌ์ฉ์ ์ ์ ๊ตฌ์ฑ์ด ์ ๊ณต๋์ง ์์ผ๋ฉด knex์์ knexfile์ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ ๋๋ค.)
๊ธ์, knex๋ ์ฑ ์ฅ ์๋์์ ์ฌ์ฉ๋๋ ๊ฒ์ผ๋ก knexfile์ knex๋ก ์ ๋ฌํ ๋ค์ knex์ ์ค์ ์ ์ฑ ์ฅ์ ์ฃผ์ ํ๊ณ ๋ ๋์ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด ๊ฐ์?
Bookshelf.js ๋ชจ๋ธ์ ๊ตฌ์กฐํํ๋ ๋ฐฉ๋ฒ