본문 바로가기

전체보기

(286)
박스(div)의 내용과 겹치는 박스를 만드는 방법 1111 2222 3333 .parent { background-color: plum; position: relative; } .child { background-color: pink; position: absolute; top: 10px; left: 10px; } relative 안에 absolute를 설정하면 relative인 부모를 따라서 자식이 움직이고 box로 공간을 차지 하지 않는다. absolute 속성을 빼면 다음과 같이 변한다. 참고 : https://ofcourse.kr/css-course/position-%EC%86%8D%EC%84%B1
MySQL 설치법 2 MySQL을 쓰다 보면 종종 문제가 생기나 보다. 갑자기 로컬에서 연결이 안 돼 오랫동안 애먹었다. 결국 해결 방법은 재설치였다. MySQL을 설치하는 방법이 너무 많아서인지 어떤 방법을 썼을 때에는 문제가 여전히 해결되지 않기도 했는데 성공했던 이 방법을 정리해서 기록해 두려고 한다. Homebrew service를 이용해서 설치하기 1. Homebrew를 설치하려면 터미널에서 다음을 입력한다. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 2. Homebrew를 이용해서 MySQL을 설치한다. brew install mysql (지우는 명령어 : brew remove my..
시퀄라이즈 관계 설정과 join해서 불러오는 방법 (Associations, Eager Loading) 시퀄라이즈에서 일대일, 일대다, 다대다 관계를 설정하는 방법을 다룬다. const A = sequelize.define('A', /* ... */); const B = sequelize.define('B', /* ... */); A.hasOne(B); B.belongsTo(A); 위 두 메소드를 호출하면 시퀄라이즈는 자동으로 적당한 테이블에 foreign 칼럼을 생성해준다. '다' 관계를 설정해주는 아래의 메소드들도 있다. A.hasMany(B); A.belongsToMany(B, { through: 'C' }); // A와 B의 다대다 관계 설정을 위해 C 테이블을 자동으로 생성해주기까지 한다. 1. 일대일 관계 설정은 보통 패어로 이뤄진다. 그래야 각 테이블에 해당하는 두 인스턴스가 서로의 관계를 알..
시퀄라이즈 모델 (Model Basics) 시퀄라이즈에서 모델이라는 개념이 생소하다. 데이터베이스의 테이블을 객체화 시킨 거라고 생각하면 쉽다. 모델을 생성하려면 다음을 입력한다. const { Sequelize, DataTypes } = require('sequelize'); const sequelize = new Sequelize(/* ... */); const User = sequelize.define('User', { name: { type: DataTypes.STRING, allowNull: false }, email: { type: DataTypes.STRING } }, { // Other model options go here }); 여기서 생성한 User를 가지고 테이블을 다룰 수 있다. 다만 User 자체가 데이터베이스의 테이블은..
시퀄라이즈 시작 (Getting Started) 처음 접하기에 까다로운 시퀄라이즈를 한 번 정리해보겠다. 매뉴얼에서 필요하다고 생각하는 부분만 다룰 테니 나머지는 아래 링크를 따라가면 되겠다. https://sequelize.org/master/manual/getting-started.html 1. 시퀄라이즈를 설치한다. npm install --save sequelize 2. MySQL을 설치한다. 다른 데이터베이스는 매뉴얼을 참고하자. npm install --save mysql2 3. 데이터베이스를 연결한다. const sequelize = new Sequelize('database', 'username', 'password', { host: 'localhost', dialect: 'mysql' }); 4. 연결이 잘 됐는지를 확인할 수 있다. ..
SQLite 기본 사용법 터미널에서 다음을 입력하면 sqlite 데이터 베이스를 열 수 있다. sqlite3 파일이름.sqlite 만약 파일이름이 존재하지 않는다면 자동으로 파일을 생성해준다. 파일을 실행하면 sqlite> 모양이 나타나고 SQL 쿼리문을 작성할 수 있다. create 쿼리문으로 테이블을 만들어주면 처음에 입력했던 이름의 파일이 생성되는 것을 볼 수 있다. 일반적인 쿼리문 말고 어떤 옵션을 적용할 때 점으로 시작하는 명령어를 사용할 수 있다. dot-commands라고 한다. 많이 쓰는 닷컴맨드는 다음과 같다. .tables // 어떤 테이블이 있는지 보여준다. .schema 테이블이름 // 테이블의 구조를 보여준다. .quit // 프로그램을 종료한다. 다른 데이터베이스에 비해 가벼워서 모바일 같은 환경에 종종..
AWS S3 사용 방법 사전 준비 : - AWS에 가입한다. - 리액트에서 빌드한 파일을 준비한다. 1. AWS에 로그인 한다. https://ap-northeast-2.console.aws.amazon.com/console/home?region=ap-northeast-2 2. 서비스 찾기에 s3를 입력해서 s3에 진입한다. 3. 버킷 만들기를 클릭해서 버킷을 만든다. 4. 속성 탭의 정적 웹 사이트 호스팅을 클릭한다. '이 버킷을 사용하여 웹 사이트를 호스팅합니다.'를 클릭한다. 웹사이트를 접속했을 때 보여줄 인덱스 문서와 오류가 생겼을 때 보여줄 문서를 설정한다. 그러면 버킷이 정적 웹 사이트를 호스팅하는 버킷으로 설정된다. 5. 권한 탭의 퍼블릭 액세스 차단에서 편집을 클릭해 모든 퍼블릭 액세스 차단을 해제한다. 6. 권..
node.js의 mysql 모듈 사용 방법 클라이언트에 응답하는 데에 필요한 기본적인 예제만 다뤘다. 1. 데이터베이스 연결 var mysql = require('mysql'); var con = mysql.createConnection({ host: 'localhost', user: 'root', password: '1234', database: 'shop' }); con.connect(err => { if (err) throw err; console.log("데이터베이스가 연결 됐습니다."); }); 2. 쿼리 실행 var queryString = 'SELECT * FROM `books` WHERE `author` = "socratone"' connection.query(queryString, function (error, results, f..