일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 힙
- 스프링 폼
- 유니크제약조건
- eager
- 지연로딩
- 이진탐색
- 비관적락
- execute
- 스토어드 프로시저
- 연결리스트
- PS
- fetch
- 다대다
- 낙관적락
- 다대일
- JPQL
- 일대다
- FetchType
- 데코레이터
- 즉시로딩
- 연관관계
- 백트래킹
- shared lock
- SQL프로그래밍
- BOJ
- exclusive lock
- 동적sql
- dfs
- querydsl
- CHECK OPTION
- Today
- Total
목록Django (18)
흰 스타렉스에서 내가 내리지
https://django-allauth.readthedocs.io/en/latest/installation.html\ Installation — django-allauth 0.43.0 documentation Post-Installation In your Django root execute the command below to create your database tables: Now start your server, visit your admin pages (e.g. http://localhost:8000/admin/) and follow these steps: Add a Site for your domain, matching settings.SITE_ID django-allauth.readthedo..
my_settings.py 생성 my_settings.py에 SECRET_KEY랑 DB 관련 정보 작성 settings.py에서 my_settings.py로부터 데이터 import
views.py from django.core.paginator import Paginator def home(request): # posts = Post.objects.all() posts = Post.objects.filter().order_by('-date') paginator = Paginator(posts, 5) pagenum = request.GET.get('page') # url 주소 상의 쿼리문 posts = paginator.get_page(pagenum) return render(request, 'index.html', {'posts':posts}) index.html {% if posts.has_previous %} 첫 페이지 이전 페이지 {% endif %} {{posts.numbe..
회원 관리를 위해서는 새로운 앱을 하나 만들어 줘야 한다 그 앱 상에서 로그인, 로그아웃, 회원가입을 관리해 주는게 효율적이다 앱 생성 python3 manage.py startapp accounts settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blogapp', 'accounts' ] 로그인 urls.py from accounts import views as accounts_views ... ... urlp..
models.py class Blog(models.Model): title = models.CharField(max_length=200) body = models.TextField() photo = models.FileField(default="", blank=True, null=True, upload_to='blog_photo') date = models.DateTimeField(auto_now_add=True) def __str__(self): return self.title class Comment(models.Model): comment = models.TextField(max_length=200) date = models.DateTimeField(auto_now_add=True) post = m..
settings.py MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' MEDIA_ROOT : 사용자가 업로드 한 미디어가 저장되는 경로 MEDIA_URL : 업로드 된 미디어에 접근할 수 있는 경로 urls.py from django.conf.urls.static import static from django.conf import settings ... ... ... urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) models.py class Blog(models.Model): title = models.CharField(max_length=20..
urls.py path('detail//', views.detail, name="detail"), index.html {% for post in posts %} 제목 : {{ post.title }} 작성 날짜 : {{ post.date }} {% endfor %} pk값을 이용해 특정 모델 객체 하나만 가져오기 : get_object_or_404() views.py def detail(request, post_id): blog_detail = get_object_or_404(Blog, pk=post_id) return render(request, 'detail.html', {'blog_detail':blog_detail}) detail.html 제목 {{ blog_detail.title }} 날짜 {{..
views.py def home(request): posts = Blog.objects.all() return render(request, 'index.html', {'posts': posts}) index.html {% for post in posts %} {{post.title}} - {{post.date}} {{post.body}} {% endfor %} 홈 화면 DB로부터 데이터를 필터링해서 가져오기 - 최신순으로 가져오기 views.py def home(request): # posts = Blog.objects.all() posts = Blog.objects.filter().order_by('-date') return render(request, 'index.html', {'posts': pos..
path 지정 urlpatterns = [ path('admin/', admin.site.urls), path('', views.home, name='home'), path('new/', views.new, name='new'), path('create/', views.create, name='create'), path('formcreate/', views.formcreate, name='formcreate'), path('modelformcreate/', views.modelformcreaete, name='modelformcreate'), ] forms.py - 비교를 위해 BlogForm도 같이 업로드한다 from django import forms from .models import Blog cl..
app에 forms.py 생성 from django import forms class BlogForm(forms.Form): # 내가 입력받고자 하는 값들 title = forms.CharField() body = forms.CharField(widget=forms.Textarea) views에 함수 작성 (GET) # django form을 이용해서 입력값을 받는 함수 # GET 요청과 (= 입력값을 받을 수 있는 html을 갖다 줘야함) # POST 요청 (= 입력한 내용을 데이터베이스에 저장. form에서 입력한 내용을 처리) # 둘 다 처리가 가능한 함수 def formcreate(request): if request.method == 'GET': form = BlogForm() return re..