django 내용은 아니지만 지금 나를 도와주고 있는 친구가 페북 틀만 CSS로 따라서 만들어 보라 그래서 우선 로그인 화면만 만들어보았다. (동형암호 보고서 내느라 정신이 없어 1주일만에 코딩을 했다.) 부트스트랩 안 쓰고 CSS 복습 용으로 CSS로만 만들어서 조금 어색할 순 있다. (박스 크기나 색깔은 그냥 대충 비슷해보이는 걸로 함) 완전한 모습을 원하시는 분이면 보지 않기를 추천한다. 그리고 정말 기초적인 내용으로 만든거라 따로 설명도 하지 않겠다. (다음에는 프로필 부분을 따라 만들 것이다.) Facebook Facebook에서 전세계에 있는 친구, 가족, 지인들과 함께 이야기를 나눠보세요. Login 비밀번호를 잊어버리셨나요? 회원가입 body{ background-color:rgb(245,..
이번에는 검색 기능을 만들어보겠습니다. 검색 기능 또한 직전 포스팅인 정렬과 같은 html에 만들면 좋지만 그러면 강제적으로 만들어 놓은 url을 수정해야되서 새로 url을 만들어서 하겠습니다. urlpatterns에 다음을 추가합니다. path('search/',views.search, name="search"), views를 만듭시다. from django.db.models import Q def search(request): content_list = Content.objects.all() search = request.GET.get('search','') if search: search_list = content_list.filter( Q(title__icontains = search) | #제목..
이번에는 게시물 정렬을 구현해보겠습니다. 게시물 정렬과 동시에 페이지네이션을 적용하려하니 get 방식으로 둘 다 넘기면 /?page=1&sort=likes 이런 식으로 될 줄 알았는데 select 값이 고정이 되지 않아 page를 넘기면 sort 값이 초기화 되는 문제가 발생하였습니다. 그렇기에 좀 강제적인 방법을 사용하였습니다. 찾아보니 ajax나 javascript를 이용해 제어할 수 있지만 아직 이 부분은 모르기에 추후에 수정하도록 하겠습니다. sort 자체는 쉽습니다. 저는 home.html을 이용해 다뤄보겠습니다. views는 다음과 같습니다. def home(request): sort = request.GET.get('sort','') if sort == 'likes': content_list..
소셜로그인 때부터 이 녀석이 떠서 뭔지 정리해보았습니다. You have multiple authentication backends configured and therefore must provide the `backend` argument or set the `backend` attribute on the user. 영어가 부족한 관계로 파파고의 힘을 얻어보았습니다 ㅎㅎㅎ (사실 해석할 줄 압니다.) 인증 백엔드가 여러 개 구성되어 있으므로 '백엔드' 인수를 제공하거나 사용자에게 '백엔드' 특성을 설정해야 합니다. 라고 하네요. 소셜로그인 기능을 추가하느라 구글 이메일 정보를 따와서 백엔드가 중첩되어 생긴 에러였습니다. 그렇기 때문에 로그인할 때 user의 정보를 어느 백엔드에서 가져와야할지를 설정해주..
이번에는 비밀번호 변경을 해보겠습니다. 찾아보니 역시 django답게 비밀번호를 변경하는 form이 존재했습니다. 하지만 이 form은 비밀번호 8자리 이상 등 귀찮은 조건을 갖추고 있습니다. 그렇기에 form을 이용한 것과 직접 함수를 짠 것 2가지로 해보겠습니다. 1. form 이용 비밀번호 변경을 위한 app의 views.py의 module import 부분에 다음을 추가합니다. from django.contrib.auth.forms import PasswordChangeForm from django.contrib.auth import update_session_auth_hash from django.contrib import messages 그리고 함수는 아래와 같습니다. def change_pa..