배경 정보node.js/express application - 데이터베이스 연결 논리는 어디에 두어야합니까?
방금 첫 번째 명시 적 응용 프로그램을 만들었습니다. 파일과 기본 폴더 구조가 많이 생성되었음을 알 수 있습니다. 나는 '위젯'과 GET 메소드가 호출 될 때, 나는 레디 스 데이터베이스를 호출 할 필요라는 새로운 경로를 생성 할
[email protected]:/var/www/html/nodejs_samples/tutorial1$ ls -lah
total 36K
drwxr-xr-x 7 me me 4.0K Sep 28 09:26 .
drwxrwxr-x 5 me me 4.0K Sep 28 08:45 ..
-rw-rw-r-- 1 me me 1.5K Sep 28 08:45 app.js
drwxr-xr-x 2 me me 4.0K Sep 28 09:20 bin
drwxrwxr-x 96 me me 4.0K Sep 28 09:26 node_modules
-rw-rw-r-- 1 me me 352 Sep 28 09:26 package.json
drwxr-xr-x 5 me me 4.0K Sep 28 08:45 public
drwxr-xr-x 2 me me 4.0K Sep 28 09:26 routes
drwxr-xr-x 2 me me 4.0K Sep 28 08:45 views
[email protected]:/var/www/html/nodejs_samples/tutorial1$
목표
:이처럼 내 응용 프로그램 구조가 현재 모습입니다 쿼리를 실행합니다. 나는이 GET을 트리거하는 데 사용할 URL은 다음과 같은 것입니다 :
http://myserver/tutorial1/widgets/
또는 12345 내가 조회 할 위젯 키가
http://myserver/tutorial1/widgets/12345
.
내가 그렇게 한까지
내가 연결하는 방법을 설명이 문서를 발견 무엇/A 레디 스 데이터베이스 쿼리 : 나는 또한 경로를 복사 한 http://expressjs.com/en/guide/database-integration.html#redis
을/명시 것을 users.js 발전기는 "무료"로 나를 위해 routes/widgets.js를 출발점으로 삼았습니다. 나는 데이터베이스 연결 논리와 쿼리 로직을 추가해야하는 곳은 나에게 분명하지 않다
[email protected]:/var/www/html/nodejs_samples/tutorial1$ cat routes/widgets.js
var express = require('express');
var router = express.Router();
/* GET widgets listing. */
router.get('/', function(req, res, next) {
res.send('respond with a resource');
});
module.exports = router;
질문
:
이처럼 내 경로가/widgets.js 파일의 모습입니다. 저는 MVC에서 모든 데이터베이스 로직을 모델로 분할하는 데 익숙합니다.
모든 것을 route/widgets.js 파일에 저장할 수 있습니까?
내 app.js 파일의 모양은 http://pastebin.com/hAe5mvwt에 대한 링크가 있습니다. 나는 10 줄과 28 줄의 2 줄을 추가했다.
좋은 자습서에 대한 제안이나 링크가 있으면 좋을 것이다.
당신은 * 할 수 있지만 그 다음에는 경로 처리기에 직접 연결됩니다. 그런 식으로 시작하는 것이 좋지만, 나는 더 강한 관심사를 선호합니다. 궁극적으로 이것은 의견에 귀착됩니다. 기능을 해할 구체적인 "올바른"방법은 없습니다. –