일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- laravel
- Babel
- CentOS
- python
- 기초 수학
- NCP
- For
- deep learning
- linux
- Machine Learning
- webpack
- fastapi
- Node
- docker
- javascript
- nodejs
- SQL
- AWS
- 블레이드 템플릿
- Redux
- mariadb
- React
- Redis
- php
- phpredis
- Switch
- Go
- rabbitmq
- Backbone.js
- nginx
- Today
- Total
목록분류 전체보기 (183)
개발일기
리액트에서 상태관리를 사용할 때, 주로 리덕스를 사용한다. 이 리덕스를 사용할 때, 새로고침 버튼을 누르게 되면 저장되어있던 상태가 모두 초기화 되는 것을 확인할 수 있다. 새로고침으로 인해 데이터가 모두 증발하게 되면 페이지가 제대로 렌더링이 되지 않거나 데이터를 가져오지 못해 에러가 발생할 수 있다. 이를 미연에 방지하고자 Redux persist를 활용하여 에러를 방지할 수 있다. 즉, Redux persist는 리덕스에 저장된 데이터를 로컬 스토리지 또는 세션 스토리지에 저장하여 데이터를 유지시켜주는 패키지이다. 1. 설치 npm install redux-persist -D yarn add redux-persist -D 2. index.js import React from 'react'; impo..
Laravel에서 Ajax를 통하여 새 페이지로의 로딩 없이 페이징 처리를 하고자 하는 경우가 종종 발생한다. 이경우 laravel의 pagination을 사용하여 간단하게 기능을 구현할 수 있다. pagination의 사용법은 이전 포스팅을 참조하면 된다. https://phsun102.tistory.com/102 Laravel - Pagination 사용법 Laravel에서는 DB에 있는 내용을 불러올 때, 모든 내용을 한번에 불러와 나눠주는 것이 아니라 페이징 처리를 통해 DB 레코드들을 일정한 개수마다 가져와 페이지로 나눠 보여주는 기능을 제공한다 phsun102.tistory.com 1. 데이터 불러오기 $bbs = BBS::where('title', 'LIKE', '%음료수%')->orderB..
Redux의 버전이 4.2로 올라가면서 변경사항이 하나 생겼다. 액션 스토어를 생성하기 위해 사용하던 createStore가 deprecated가 되었다. 비록 계속해서 사용할 수는 있지만 redux toolkit의 configureStore로 대체하는 것을 권장하고 있다. createStore는 리듀서와 미들웨어를 추가할 때, 설치해야 하는 요소가 많다는 복잡함을 가지고 있다. 하지만 이를 간단하고 단순하게 만든 @reduxjs/toolkit의 configureStore를 사용하면오류의 확률을 줄이고 편하게 사용할 수 있다. 1. 설치 npm install @reduxjs/toolkit -D yarn add @reduxjs/toolkit -D 2. import 방법 import { configureSt..
Laravel에서는 DB에 있는 내용을 불러올 때, 모든 내용을 한번에 불러와 나눠주는 것이 아니라 페이징 처리를 통해 DB 레코드들을 일정한 개수마다 가져와 페이지로 나눠 보여주는 기능을 제공한다. 0. Laravel의 Pagination의 작동방식 게시판 DB에 300개의 데이터가 저장되어있고 id값을 기준으로 오름차순 정렬한 후, pagination을 통해 15개의 데이터를 각 페이지마다 불러온다고 가정해보자. 총 20개의 페이지로 구성이 될 것 이다. 오름차순 정렬이기 때문에 1페이지는 286 ~ 300, 2페이지는 270 ~ 285 ... 의 id값을 가지는 데이터가 보여져야 한다. 라라벨의 pagination에서는 각 페이지를 구분할 때 url 뒷부분에 ?page=1, ?page=2 라는 식으..
Laravel에서는 Webpack의 빌드 기능을 사용하여 자바스크립트 파일과 Css파일을 빌드시켜 사용할 수 있는 Laravel Mix라는 기능을 제공한다. 또한 Laravel Mix는 Webpack보다 사용하기 쉽고 성능 부분에서도 큰 차이가 없다는 장점을 가지고 있다. 1. 준비단계 Laravel Mix기능을 사용하기 위해서는 Node와 Npm이 설치되어 있어야 한다. node -v npm -v # node와 npm의 설치 유무 확인 2. Laravel Mix 실행 package.json을 살펴보면 Laravel Mix 방법을 찾을 수 있는데, 두가지의 방법으로 실행할 수 있다. npm run watch npm run watch-poll watch : watch는 Css와 Js파일의 변경 부분이 있을..
DB는 mysql / mariadb를 사용하는 상태에서 laravel의 ORM로 group by를 사용할 때, 위와 같은 에러가 나오는 경우가 종종있다. laravel의 config/database.php 설정 부분의 strict부분을 변경해줘야 한다. 'mysql' => [ ... // 'strict' => true, 'strict' => false, ] strict 부분을 false로 변경해주면 group by를 사용할 때, 에러가 발생하기 않게된다. 참고사이트 : https://stackoverflow.com/questions/40917189/laravel-syntax-error-or-access-violation-1055-error Laravel : Syntax error or access vio..
1. addslashes() PHP에서 문자열을 표시할 때, "(큰 따옴표)와 '(작은 따옴표)가 문자열에 포함되어 있는 경우 오류가 발생하는 경우가 있다. DB에서 값을 가져올 때, 또는 넣을 때 이러한 오류를 방지하고자 addslashes와 stripslashes를 사용한다. 사용시, 이스케이프 처리되며 오류없이 실행할 수 있다. 만약 위와 같이 str변수에 있는 값을 div태그의 data 요소에 집어넣는다고 가정해보자. data-name 속성값을 선언하기 위해 작은 따옴표(')를 사용하였다. 하지만 그 뒤에 나오는 str변수에는 작은 따옴표(')가 포함되어져 있다. 이로 인하여 개발자가 넣고자 하는 값이 data-name 속성에 들어가는 것이 아니라 my name is 부분까지만 잘려서 들어가게 된..