반응형

전체 글 136

장고 (django) pagination 구현하기

장고 페이지네이션 구현 django pagination 1. views.py Paginator 클래스 활용 from django.core.paginator import Paginator def post_list(request): post_list = Post.published.all() # 게시된 게시물 목록 paginator = Paginator(post_list, 3) page_number = request.GET.get('page', 1) posts = paginator.page(page_number) return render(request, 'blog/post/list.html', {'posts':posts}) paginator = Paginator(리스트, 한 페이지에 보여질 갯수) -> 전체 ..

장고(django) QuerySets와 매니저로 작업하기

Django의 ORM을 사용해서 데이터베이스 사용하는 방법 터미널에서 작업하중인 경로로 이동 cd mysite manage.py 파일에서 shell 열기 python manage.py shell 모듈 import from django.contrib.auth.models import User (장고가 제공하는 유저 정보, 어드민 등록 후 사용) from blog.models import Post (내가 만든모델) 유저 정보 가져오기 user = User.objects.get(username = 'admin') 포스트 정보 가져오고 저장하기 post = Post(author = user) post.save() 포스트 id 출력해보기 post.id 전체 글 가져오기 all_posts = Post.objects..

postgreSQL rule 사용하기

https://www.postgresql.org/docs/current/sql-createrule.html CREATE RULE CREATE RULE CREATE RULE — define a new rewrite rule Synopsis CREATE [ OR REPLACE ] RULE name AS ON … www.postgresql.org 규칙을 적용할 테이블: tags tags 테이블에 tag = '과학' 으로 입력될 경우, 새로운 테이블에 이 데이터를 추가해주는 룰을 만들어보자. 1. 룰에 맞는 데이터를 쌓아줄 테이블을 새로 만들어줍니다. CREATE TABLE a_tags ( id INT not null primary key, book_id int, tag text); 2. 규칙을 만들어줍니다. ..

Today I Learned/SQL 2023.07.13

postgresql json data로 변환하고 테이블로 만들어서 사용하기

https://www.postgresql.org/docs/current/functions-json.html 9.16. JSON Functions and Operators 9.16. JSON Functions and Operators 9.16.1. Processing and Creating JSON Data 9.16.2. The SQL/JSON Path Language This section describes: functions and … www.postgresql.org 1. json type의 테이블 만들기 post_json -> table name 아래처럼 테이블을 생성하고 보면, type = jsonb 로 출력된다. CREATE TABLE post_json (jsondata jsonb); 2. 원하..

Today I Learned/SQL 2023.07.13

python class 기초 개념 정리 & 실습1 (점프투파이썬 따라가기)

https://wikidocs.net/28 05-1 클래스 초보 개발자들에게 클래스(class)는 넘기 힘든 장벽과도 같은 존재이다. 독자들 중에도 클래스라는 단어를 처음 접하는 이들이 있을 것이다. 그러면 도대체 클래스가 무엇인지, 클… wikidocs.net 클래스 개념부터 실습까지 한번 정리해보았습니다. 기초탄탄!! 클래스와 객체 (class, object) 클래스는 붕어빵틀, 과자틀, 눈오리만들기 틀 등으로 다양하게 설명된다. 그러면 똑같은걸 찍어내는 도구인가? 라고 생각할 수 있는데, 붕어빵으로 예를 들어보면 안에 들어가는 내용물에 따라 다른 붕어빵이 될 수 있다! 초코붕어빵, 슈크림붕어빵, 팥붕어빵 등등.. 클래스는 꼭 가져야하는 특징을 정의해놓은 틀이고, 객체는 그 틀 안에서 독자적으로 생겨..

[Python] 리스트 슬라이싱 [ : ] List Slicing

파이썬 리스트 슬라이싱 기본 파이썬의 리스트 자료형에서 연속된 데이터를 잘라서 가져오는데 사용한다. 사용법: list[시작 인덱스:끝 인덱스 +1 ] 시작인덱스는 별로 헷갈리지 않는데, 끝나는 인덱스가 헷갈리는데 시작 인덱스는 포함하고, 끝 인덱스는 포함하지 않는다. 예시) 위 예시를 보면 인덱스 3까지 가져오는게 아니라 3보다 하나 작은 2까지 가져오는걸 알 수 있다. a[1:3] -> [1, 2] a[2:4] -> [2, 3] 따라서 가져와야하는 인덱스보다 하나 더 크게 작성해야한다는 점을 주의하자 인덱스 값 생략 [:] 만약에 항상 맨 앞부터 슬라이싱하고 싶을 때 매번 a[0:5] ,a[0:4] 이렇게 작성하지 않아도 된다. 파이썬에서 비어있을경우 default로 0부터 시작한다. 마찬가지로 끝나는..

mac postgreSQL pgenv로 설치하기 + 기본 실습

터미널에서 pgenv로 설치하면, 버전 왔다갔다 하면서 설치해서 사용하기에 편합니다. 1. 터미널 접속해서 명령어 입력 git clone https://github.com/theory/pgenv 2. 버전 설치하기 pgenv build 15.3 * 버전 확인후 가장 최신으로 설치 pgenv available 3. 환경변수 설정해주기 export PATH=$PATH:$HOME/pgenv/bin:$HOME/pgenv/pgsql/bin 4. 데이터베이스 시작 psql -U postgres -h localhost template1 데이터베이스 생성 CREATE DATABASE library; 사용자 생성 및 비밀번호 설정 (user1, '1234' 부분에 각각 원하는 유저이름과 비밀번호 넣기) CREATE US..

Today I Learned/SQL 2023.07.05

장고 generic display view 로 간단하게 bookmark앱 구현하기

장고에서 뷰 로직을 함수형 (def) 또는 클래스형 (class) 으로 정의할 수 있다. 이 때 클래스형으로 정의하면 장고에서 제공하는 제네릭 뷰를 활용할수 있는 장점이 있다. Generic View 종류 Base View - View : 최상위에 있는 부모 제네릭 뷰 클래스 - Template View : 주어진 템플릿으로 렌더링해주는 뷰 - Redirect View : 주어진 URL로 Redirect해주는 기능의 뷰 Generic Display View - ListView : 조건에 맞는 객체들의 목록을 보여주는 뷰 - DetailView : 조건에 맞는 하나의 세부 객체들을 보여주는 뷰 Generic Edit View - FormView : 폼이 주어지면 해당 폼을 출력하는 뷰 - CreateVie..

장고 앱 url 분리작성하기

하나의 프로젝트에 여러 앱을 개발하는 경우 앱 마다 url.py 를 따로 만들어서 관리해주는것이 좋다. 이렇게 앱별로 작성하면 수정 및 확장이 용이하기 때문입니다. 프로젝트 구조 프로젝트: mysite - 앱1. blog - 앱2. bookmark 1) 프로젝트 urls.py 에 작성 blog 와 bookmark의 url이 모두 한 파일에서 작성되어 있습니다. mysite.urls.py urlpatterns = [ path('admin/', admin.site.urls), path('blog/', views.post_list, name = 'post_list'), path('blog/post//', views.post_detail, name='post_detail'), path('blog/post/new..

반응형