전체 글
-
[Programmers] 크기가 작은 부분문자열 _Python알고리즘/프로그래머스 2022. 12. 28. 01:21
문제 https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 def solution(t, p): answer = 0 len_p = len(p) len_t = len(t) list(t) p = int(p) for i in range(0, len_t): word = "" if len_t - i < len_p : # print("범위초과") break; n = i for j in range(0, len_p): word += t[n] n += 1 # ..
-
[Django] 모델 간 데이터 연결하는 방법, 외래키(FK) 사용하기파이썬/Django 2022. 12. 27. 22:43
ForeignKey 사용하기 ForeignKey = 외래키 house에서 user의 정보를 컬럼으로 가져오고 싶으면 models.ForeignKey를 사용하면 된다. owner = models.ForeignKey("참조할 모델", on_delete=) user 정보를 참조하고 싶으면 참조할 모델에 user.User를 입력하면 된다. 해당 컬럼의 정보가 삭제되었을 때 on_delete on_delete는 해당 컬럼의 정보가 삭제되었을 때의 행동을 설정한다. on_delete=models.SET_NULL: 데이터 유지 on_delete=models.CASCADE : 자동 삭제 예컨대, 숙소정보의 경우 숙소 주인 host 계정이 삭제되면 숙소 정보도 같이 삭제된다. 📁 houses/models.py from ..
-
[Django] 어드민 페이지 커스텀하기파이썬/Django 2022. 12. 27. 21:30
fieldsets 과 fields fields 를 사용할 경우 📁 uesrs/admin.py from django.contrib import admin from django.contrib.auth.admin import UserAdmin from .models import User # Register your models here. @admin.register(User) class CustomUserAdmin(UserAdmin): fieldsets = None fields = ("email", "password", "name") fieldsets 을 사용할 경우 from django.contrib import admin from django.contrib.auth.admin import UserAdmin..
-
[Django] app에 컬럼 추가하기파이썬/Django 2022. 12. 27. 20:34
user app 모델에 컬럼 추가하기 📁 uesrs/models.py from django.db import models from django.contrib.auth.models import AbstractUser # Create your models here. class User(AbstractUser): # 성과 이름으로 분류하는 것은 서구적인 정보 입력 방식이기 때문에 관리자 페이지에서 보이지 않도록 설정한다. editable=False first_name = models.CharField(max_length=150, editable=False) last_name = models.CharField(max_length=150, editable=False) # 이름 입력창 name = models.Ch..
-
[Django] 사용자 app 생성하기 _Mac파이썬/Django 2022. 12. 27. 01:50
모델 커스텀하기 사용자가 컨트롤할 수 있는 부분을 특정하는 것을 모델 커스텀이라고 한다. 예를 들어, 사용자가 로그인할 때에는 비밀번호가 아니라 소셜 로그인으로만 가능하도록 한다던가, 프로필 이미지를 추가한다던가, 포스트의 경우 열람만 가능하고 삭제는 할 수 없게 한다던가 하는 것들이 그것이다. User Model 커스텀하기 코드 컨벤션을 위한 black 설치하기 black이란? Python Formatter 코드 통일 및 재사용을 위해 code convention을 진행하고 code style이나 format을 설정한다. 여기서 black은 파이썬 코드 스타일인 pep8에 따라 코드를 자동으로 포맷해준다. pip3 install black users의 app 생성하기 python manage.py s..
-
[Django] app(폴더) 및 model 만들기파이썬/Django 2022. 12. 7. 11:56
app 생성하기 장고에서 말하는 app이란? app(폴더)는 프로젝트의 구성 단위이다. 숙박업체 예약서비스를 만든다고 가정하면 숙소정보를 담은 house app과 사용자 정보를 담는 uesr app, 리뷰를 볼 수 있는 review app 등등이 필요할 것이다. app 생성하기 python manage.py startapp [앱 이름] 앱 이름을 houses 라고 지었다면, 프로젝트 폴더 안에 houses 라는 폴더가 하나 생겼을 것이다. 그리고 폴더 내부에 models.py 파일에 model 정보를 작성한다. 장고의 작동 원리를 알고 싶다면, settings.py , helloworld.html, views.py, urls.py , manage.py 파일들끼리 서로 데이터를 어떻게 처리하고 연결하는지 ..
-
[Django] 프레임워크 vs 라이브러리파이썬/Django 2022. 12. 7. 11:18
프레임워크 vs 라이브러리 라이브러리 함수나 클래스, 메소드 등 원하는 것을 작성하고 나중에 import/from 해서 사용하는 것 라이브러리는 request와 비슷한 것이다. (호출하여 사용하는 것) 프레임워크 프레임워크는 반대로 우리가 쓴 코드를 프레임워크가 호출하는 것이다. 장고 라는 하우스 안에서 장고의 룰에 맞게 코드를 짜면 장고는 그것을 읽고 반영한다. Django에서 언어 설정, 대한민국 시간 설정하기 장고파일의 초기 설정을 바꾸기 위해서는 settings.py 파일을 수정하면 된다. 예를 들어, 언어와 시간설정을 하려면 내부에 있는 TIME_ZONE과 LANGUAGE_CODE 변수를 바꿔주면 된다. settings.py LANGUAGE_CODE = 'ko-kr' TIME_ZONE = "As..
-
[Django] 서버 구동하기 (feat. migration) 및 관리자 생성파이썬/Django 2022. 12. 5. 18:33
Django 서버 구동하기 프로젝트를 생성하고 나면 터미널에서 아래를 입력해서 서버를 구동해보자. python manage.py runserver 참고로 서버를 종료하는 명령은 control+C 이다. manage.py 파일은 터미널에서 django를 실행시키는 파일이다. 서버를 구동하면 아래 세가지 현상을 볼 수 있다. 1. http://127.0.0.1:8000 이라는 링크가 뜬다. 위 주소로 들어가보면 서버가 생성된 것을 볼 수 있다. 2. 아래와 같은 문자가 빨간색으로 뜰 것이다. You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, a..