본문 바로가기

FrameWork/pinterest clone13

12. 마무리 구상한 모든것을 만들어 보았고 마무리 하는 단계를 진행한다. 1. 기본 기본경로 설정 딱 들어가면 바로 articlelist가 보이도록 설정한다. urlpatterns = [ path('admin/', admin.site.urls), path("", ArticleListView.as_view(), name='home'), # 요부분 추가 path('accounts/', include('accountapp.urls')), path('profiles/', include('profileapp.urls')), path('articles/', include('articleapp.urls')), path('projects/', include('projectapp.urls')), path('subscriptions/.. 2023. 7. 25.
11. Subscriptionapp 만들기 프로젝트를 구독할 수 있는 app을 만든다. 생각해보면 구독은 특이한 특징을 갖는다. 다른 페이지처럼 어디로 이동 하는 것이 아니라 그자리에서 구독을 누르고 구독을 취소하는 것으로 이루어진다. 이는 django에서 RedirectView라는 것을 이용한다. 지금까지 진행했던 것처럼 기본(모델 migrtate까지) 세팅을 진행한다. 구독은 유저가 프로젝트를 구독하는 형식으로 이루어진다. 따라서 필드는 user와 project두개가 되고 각각 User모델과 Project모델의 ForeignKey가 된다. 이후 한쌍으로 묶어준다. from django.contrib.auth.models import User from django.db import models from projectapp.models impor.. 2023. 7. 25.
10. Projectapp 만들기 projectapp은 article이 그룹화 되어 나타나는 형태이다. 지금까지 진행했던 것과 마찬가지로 python manage.py startapp projectapp을 실시한다. settings, urls, projectapp/urls, projectapp/models를 먼저 세팅해주고 migration까지 실시한다. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'accountapp', 'bootstrap4', 'profile.. 2023. 7. 24.
9. articleapp만들기 계정관련된 앱을 모두 완료했고 이제 게시물을 만든다. 먼저 만들 앱은 articleapp이다. articleapp을 만들기 전에 pinterest사이트를 보면 다음과같이 되어있다. 카드들이 사진 크기에 맞춰 사이즈가 다른채로 엇갈려서 배치되어있고 창 사이즈가 줄어들면 그에따라 구조가 변경된다. 이를 위해 javascript magicgrid를 사용한다. 사용할 magicgrid는 아래 url에서 확인할 수 있다. 위의 url는 magicgrid github 아래 url은 readme에 있는 jsfiddle이다. magicgrid코드는 github/dist/magic-grid.cjs.js파일을 사용한다. GitHub - e-oj/Magic-Grid: A simple, lightweight Javascrip.. 2023. 7. 22.