- delete
- 완전검색
- 그리디
- drf
- 통계학
- ORM
- 스택
- create
- N:1
- 쟝고
- Django
- regexp
- 뷰
- 백트래킹
- Tree
- count
- update
- outer join
- migrations
- Article & User
- 이진트리
- M:N
- 큐
- Vue
- distinct
- SQL
- Queue
- 트리
- DB
- stack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
목록2024/05 (31)
데이터 분석 기술 블로그

1. FixturesDjango가 데이터베이스로 가져오는 방법을 알고 있는 데이터 모음입니다. 데이터베이스 구조에 맞추어 작성되어있습니다.2. 초기 데이터 제공Fixtures의 사용 목적입니다.3. Fixtures 활용3-1 사전 준비M:N까지 모두 작성된 Django 프로젝트에서 유저, 게시글, 댓글 등 각 데이터를 최소 2~3개 이상 생성해 둡니다.3-2 fixtures 관련 명령어dumpdata: 생성 (데이터 추출)loaddata: 로드 (데이터 입력)3-3 dumpdata데이터베이스의 모든 데이터를 추출합니다. 추출한 데이터는 json 형식으로 저장합니다.# 작성 예시python manage.py dumpdata [app_name[.ModelName] [app_name[.ModelName] ....

User(M) - User(N)0명 이상의 회원은 0명 이상의 회원과 관련이 있습니다. 즉, 회원은 0명 이상의 팔로워를 가질 수 있고, 0명 이상의 다른 회원들을 팔로잉할 수 있습니다.ManyToManyFiled를 작성합니다.참조 : 내가 팔로우하는 사람들(팔로잉, followings)역참조 : 상대방 이밪에서 나는 팔로워 중 한 명 (팔로워, followers)바뀌어도 상관 없으나 관계 조회 시 생각하기 편한 방향으로 정한 것입니다.# accounts/models.pyclass User(AbstractUser): followings = models.ManyToManyField('self', symmetraicl=False, related_name='followers')Migrations 진행 후..

프로필 페이지각 회원의 개인 프로필 페이지에 팔로우 기능을 구현하기 위해 프로필 페이지를 먼저 구현해 봅시다.url을 작성합니다.# accounts/urls.pyurlpatterns = [ ... path('profile//', views.profile, name='profile'),]view 함수를 작성합니다.# accounts/views.pyfrom django.contrib.auth import get_user_modeldef profile(request, username): User = get_user_model() person = User.objects.get(username=username) context = { 'person': person, } ..

좋아요 기능 구현url 작성합니다.# articles/urls.pyurlpatterns = [ ... path('/likes/', views.likes, name='likes'),]view 함수를 작성합니다.# articles/views.py@login_requireddef likes(request, article_pk): article = Article.objects.get(pk=article_pk) if request.user in article.like_users.all(): article.like_users.remove(request.user) else: article.like_users.add(request.user) return redi..

1. 모델 관계 설정Many to Many relationships (N:M or M:N)한 테이블의 0개 이상의 레코드가 다른 테이블의 0개 이상의 레코드와 관련된 경우 양쪽 모두에서 N:1 관계를 갖습니다.Article(M) - User(N)0개 이상의 게시글은 0명 이상의 회원과 관련이 있습니다. 게시글은 회원으로부터 0개 이상의 좋아요를 받을 수 있고, 회원은 0개 이상의 게시글에 좋아요를 누를 수 있습니다.ManyToManyField 작성하기# articles/models.pyclass Article(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) like_users =..
# 변경 전doctor.patient_set.all()# 변경 후doctor.patients.all()ManyToManyField(to, **options)Many to many 관계 설정 시 사용하는 모델 필드입니다.1. ManyToManyField's Arguments1-1 'related_name' arguments역참조시 사용하는 manager name을 변경합니다.class Patient(models.Model): doctors = models.ManyToManyField(Doctr, related_name='patients') name = models.TextField()1-2 'symmetrical' argumentsManyToManyField가 동일한 모델을 가리키는 정의에서만 ..

'through' argument중개 테이블에 '추가 데이터'를 사용해 M:N 관계를 형성하려는 경우에 사용합니다.through 설정 및 Reservation Class를 수정합니다. 이제는 예약 정보에 "증상"과 "예약일"이라는 추가 데이터가 생깁니다.class Patient(models.Model): doctors = models.ManyToManyField(Doctor, throug='Reservation') name = models.TextField() def __str__(self): return f'{self.pk}번 환자 {self.name}'class Reservation(models.Model): doctor = models.ForeignKey(D..