본문 바로가기
728x90
반응형

개발49

python flask - blueprint main.py from flask import Flask from test_api import test_api app = Flask(__name__) app.register_blueprint(test_api) @app.route('/') def main(): return "hello" test_api.py from flask import Blueprint test_api = Blueprint('test_api', __name__, url_prefix='/test') @test_api.route("/here") def test(): return "here" flask server 올린 후 request: localhost:5000/ response : hello request: localhost:5000/.. 2020. 3. 12.
개발 시 chrome cache 없애기 전략 방법1. 일시적 설정 > 개인정보보안 > 인터넷 기록 삭제 방법 2. 영구적 : Head tag에 해당 내용 추가 방법 3 지속됨 - jsp 혹은, jinja, django등의 template을 사용 중일 경우 tag 끝에 random value 붙이기 -> 새로운 js, css를 불러오면서 캐시가 생성되지 않음. {% set randomNumberStr = (range(1, 10000) | random |string) %} 2020. 3. 11.
vue를 사용하는 이유 0. "관리"가 쉽다. - 기존의 SSR을 이용한 jsp, jinja등의 백엔드에 종속된 언어와 달리 코드 베이스가 커져도 관리가 쉽다는 것이 가장 큰 이유이다. 뒤의 1~2번 이 그를 뒷받침한다.. 1. 데이터와 뷰단의 분리가 잘 되어있다. 1) 기존의 html / vanillascript data 전송에 name을 쓰거나 실제로 뷰에 직접적으로 쓰지 않는 데이터라도 hidden tag가 강요됨 = 보여주는 부분과 data의 분리가 안됨 First name: 2) VUE 기존의 js와 다르게 view 단(보여주는 부분)과 data부분(데이터)의 분리 First name: DATA의 분리가 잘되서 뭐하는가? - 처음에는 html + vanilla script/ jquery 와 차이가 나지 않을 수 있다... 2020. 3. 10.
aggregation - mongodb ( $group, $project) mongodb에서 aggregation이란? mysql의 subquery 같은 기능을 쓸 수 있는 기능 기본 형태 쿼리 db.collection_name.aggregate([ { "$group": { '_id': { "user_id": "$user_id", "user_name": "$user_name" } }, { "$project": { "id": '$_id.user_id', "name": '$_id.user_name', } }]) 결과 [ { "_id": { "user_id" : 1, "user_name": "Minho" }, "id" : 1, "name": "Minho" }, { "_id": { "user_id" : 2, "user_name": "Suji" }, "id" : 2, "name": "S.. 2020. 3. 9.
728x90