전체 글 96

[Joi] TopLevelDomainOptions : { tlds: { allow: true } }

최상위 도메인(Top-level domain, TLD)은 인터넷에서 도메인 네임의 가장 마지막 부분을 말한다. 예컨대 ko.wikipedia.org의 최상위 도메인은 .org가 된다. 최상위 도메인은 .com과 같은 일반 최상위 도메인과 .kr 같은 국가 코드 최상위 도메인으로 나뉜다. * - `true` to use the IANA list of registered TLDs. This is the default value. 기본값이 tld allow true인가보다. list에 없는 것도 수용하려면 false를 하라고 한다. /** * - `true` to use the IANA list of registered TLDs. This is the default value. * - `false` to al..

[mysql] 특정 값 제외 검색

https://tnsgud.tistory.com/671 Mysql select 조회시 특정값 제외, 포함 검색 및 LIKE NOT 활용 Mysql select 조회시 특정값 제외, 포함 검색 및 LIKE NOT 활용 데이터를 조회하는 select 쿼리 조건절 부분을 간단히 정리합니다. 데이터베이스에 존재하는 데이터 중에서 원하는 부분을 조회 하기 위 tnsgud.tistory.com https://webisfree.com/2014-01-28/[mysql]-%ED%95%84%EB%93%9C%EC%97%90%EC%84%9C-%ED%8A%B9%EC%A0%95%EB%AC%B8%EC%9E%90-%ED%8F%AC%ED%95%A8-%EB%98%90%EB%8A%94-%EC%A0%9C%EC%99%B8%ED%95%9C-d..

[node.js celebrate/ joi] celebrate Is not a function 에러, json이 아닌 html error() 문제

https://gumpcha.github.io/blog/joi-overview Joi, Javascript object schema validator 시작하기 API 수준이든, 함수 수준이든 외부 입력을 항상 validation하는 습관은 중요하다. 귀찮다고 빼 먹는다면 언젠가는 분명 문제를 일으킬 것이다. 많은 node용 validator가 있지만 Joi가 우수한 점 gumpcha.github.io 문법적으로 기억할 부분 많다! 많은 node용 validator가 있지만 Joi가 우수한 점은 관계에 따른 내용을 정의할 수 있다는 점이다. 예를 들어 a와 b가 둘 중에 하나라도 있으면 된다든가, a가 있을 때만 b가 있어야 된다는 식이다. Joi의 동작 기본적인 중요한 부분은 훑었으니, Joi의 동작 방..

[Javascript] typeof 그리고 배열 / Form Data /join, split

https://cimfalab.github.io/deepscan/2016/07/typeof typeof 연산자의 잘못된 사용 JavaScript에서 typeof 연산자의 잘못된 사용례를 알아봅니다. cimfalab.github.io 객체가 배열인지 판단하기 위한 코드로서 “Array” 혹은 “array”로 비교하는 경우가 종종 발견됩니다. 하지만 typeof의 반환 값에는 “Array” 혹은 “array”가 없습니다. (MDN을 참고하세요.) 따라서 객체가 배열인지 체크를 위해서는 Array.isArray() 혹은 jQuery, underscore 등의 라이브러리에서 제공하는 배열 체크 함수를 사용해야 합니다. https://2ham-s.tistory.com/307 [JavaScript]Form Data..

foo, bar의 어원을 찾아서

그냥 변수명 짓기 애매할 때 쓰는 것이라고 한다. foo, bar 의 어원을 찾아서 프로그래밍을 하다보면 책이나 웹 사이트의 예제 코드에서 foo, bar 와 같은 문자를 흔히 볼 수 있는데요, 변수명 또는 함수명을 짓거나 간단한 문자열 값이 필요한데 딱히 쓸 말이 없을 때 주로 futurecreator.github.io https://zetawiki.com/wiki/%EB%B3%80%EC%88%98%EB%AA%85_foo,_bar 변수명 foo, bar - 제타위키 다음 문자열 포함... zetawiki.com https://www.hooni.net/xe/study/3734 프로그래밍에서 foo, bar 함수의 유래 - 후니넷 프로그래밍 예제를 보면서 함수를 사용할 때 함수 이름에서 foo(), bar..

ORM이란? TypeORM이란

ORM이란 Object Relational Mapping, 객체-관계 매핑 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다. 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용한다. 객체 모델과 관계형 모델 간에 불일치가 존재한다. ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다. 데이터베이스 데이터 Object 필드 객체를 통해 간접적으로 데이터베이스 데이터를 다룬다. Persistant API라고도 할 수 있다. Ex) JPA, Hibernate 등 대부분 ORM 솔루션은 DB에 종속적이지 않다. 종속적이지 않다는것은 구현 방법 뿐만아니라 많은 솔루션에서 자료형 타입까지 유효하다. https://gmlwjd9..

[MYSQL] AI를 PK로 삼고 싶지 않을 때 / 대소문자를 구분하고 싶을 때

1. AI를 PK로 삼고 싶지 않을 때 AUTO_INCREMENT컬럼을 pk에서 빼면 에러가 날 때가 있다. Incorrect table definition; there can be only one auto column and it must be defined as a key 그럴 때는 UNIQUE KEY로 생성 될 경우, 결합 PK의 후행컬럼으로 생성되거나 PK에서 제외 되어도 상관 없다. 출처: https://adbancedteam.tistory.com/149 [aDBanced Team] https://choelhee.tistory.com/15 mysql auto increment 를 포함한 테이블에서 pk 생성시 주의점 mysql에서 dump 한 ddl 을 그대로 적용하려는데 오류가 발생했다. 해당..

[npm 저장 설정값]

(1) -P or --save-prod : package.json의 dependencies에 패키지를 등록합니다.(default) (2) -D or --save-dev : package.json의 devDepndencies에 패키지를 등록합니다. (3) -O or --save-optional : package.json의 optionalDependencies에 패키지를 등록합니다. (4) --no-save : dependencies에 패키지를 등록하지 않습니다. 출처: https://xtring-dev.tistory.com/entry/NPM-npm-install-할-때-save를-함께-입력하는-이유 [xtring.dev] [NPM] npm install 할 때 --save 옵션을 함께 입력하는 이유? 하지..