본문 바로가기

WebApp/Node.js-MySQL

Node.js-MySQL JOIN

1. 2개의 table을 관계지어서 by name 표시하기

* topic TABLE과 author TABLE 관계짓기

sql문 : SELECT * FROM topic LEFT JOIN author ON topic.author_id = author.id 

 

2. SELECT BOX로 author create 구현

<select name =author>${tag}</select>에서 name select안의 내용이 post방식으로 전송될때 데이터의 이름이고

var ${tag} =<option value=☆>○</option>에서 valuepost방식으로 전송된 데이터의 값을 말한다

따라서  ☆에는 sql문으로 가져온 배열속 객체의 방식인 authors TABLE의 id값을 주고 

          ○에는 name값을 주어 UI에 나타내는것이다

          이러한 방식으로 3개의 UI를 만들고 마지막으로 선택한 option의 value 값이 post 데이터로 전송된다

 

authors[2]를 옵션으로 주었을때 id=3, name=taeho
리펙토링: 배열과 반복문 활용 및 모듈 활용

3.  author update 구현

1. update화면에서 author TABLE을 가져온 후  select UI 만들기 

 

2. template.SelectTag에 두번째 인자로 topic[0].author_id 즉 현재 선택한 화면의 author_id값 을 준다
   예제에서는 PosrgerSQL화면(주소창 id=4)이니까 topic TABLE 중 id=4인 행인

    PosrgerSQL의 author_id값 = 3(console.log 확인)

 

3. SelectTag 모듈에서 if문을 추가하여 반복중인 authors[i].id 값과 현재페이지의 author_id값(여기서는3)이 

 일치하는 경우에는 'selected' 를 그렇지 않는경우에는 ''로 공백을 주어
 <option value="${author[i].id}" ${selected}>의 ${selected}에 대입한다

 

4.그러면 일치하는경우 <option>tag에 selected라는 속성이 추가되는데 이것은 select태그 안에 여러개의

option태그가 있을 경우 selected라는 속성이 있는 태그를 기본값으로 하는 역할을 한다.

 

5.updata_create 완성

updata 화면에서 선택되어 날라온author의 value값을 post데이터로 받아 updata완성 

 

 

updata 화면에서 선택되어 날라온author의 value값을 post데이터로 받아 updata완성 

 

'WebApp > Node.js-MySQL' 카테고리의 다른 글

Node.js - MySQL security  (0) 2020.09.07
Node.js-MySQL ,authorlist CRUD  (0) 2020.09.03
Node.js-MySQL-module로 정리정돈  (0) 2020.09.02
Node.js-MySQL  (0) 2020.08.29