# URL reverse

TIL#9
1) > pagination 등의 기능을 사용하기 위해 bootstrap4를 인스톨하는 과정에서 장고를 3.0에서 3.2로 업그레이드 했다. 그리고 settings.py의 INSTALLED_APPS 부분에 bootstrap4를 추가해주었다. 2) > 템플릿의 시작 부분에 '{% load bootstrap4 %}'를 명시해주고 ^body^가 끝나기 전에 구현하려는 기능을 적용해주었다. >> 상속 받은대로 'pageobj'를 넘겨줬으나 함수뷰로 구현돼서 오류가 발생하는 관계로 'if ispaginated'로 임시 처리해주었다. 3) > @loginrequired는 장식자로 사용될 때 실질적 데코레이터인 userpasses_test 함수를 호출한다. >> 장식자는 크게 장식자의 이름과 장식자 안에 들어가는 함수 그리고 호출되는 함수를 감사는 wrapping 함수의 시작과(def) 끝(return)으로 이루어져있다고 생각할 수 있다. >>> ''' @login_required

[Django] 비 SPA 방식으로 장고 Forms/Views를 적극 활용한 인스타그램 St 만들기#10_User 모델에 Follow_Unfollow 관계 필드를 구현하고, Follow 기능 구현
1) > self를 지정함으로써 ManyToMany 관계를 User 간의 관계로 만들 수 있다. 최초 follow가 없을 수도 있으니 blank는 허용해준다 2) >자신을 제외한 유저 인스턴스를 User가 아닌 getusermodel()로 취하고 이를 리스트로 넘겨줘서 sidebar에서 순회하는데 사용한다. 3) Input Output Input Output > URL Reverse에서는 path/re_path에 지정된 URL 문자열을 생성해준다. {% url "client1" 1234 %} 와 {% url "client2" 1234 %} 는 URL 문자열이 어떻게 조합되는 지 신경쓰지 않아도, path name과 인자만 넘겨주면 된다. URL reverse 코드는 같아도 참조하는 코드에 따라서 값이 달라질 수 있는 것이다. 4) > instagram 앱에서는 getobjector404 사용 시에 getuser_model() 함수가 들어갔는데 여긴 Use

[Django] 비 SPA 방식으로 장고 Forms/Views를 적극 활용한 인스타그램 St 만들기#10_User 모델에 Follow_Unfollow 관계 필드를 구현하고, Follow 기능 구현
1) > self를 지정함으로써 ManyToMany 관계를 User 간의 관계로 만들 수 있다. 최초 follow가 없을 수도 있으니 blank는 허용해준다 2) >자신을 제외한 유저 인스턴스를 User가 아닌 getusermodel()로 취하고 이를 리스트로 넘겨줘서 sidebar에서 순회하는데 사용한다. 3) Input Output Input Output > URL Reverse에서는 path/re_path에 지정된 URL 문자열을 생성해준다. {% url "client1" 1234 %} 와 {% url "client2" 1234 %} 는 URL 문자열이 어떻게 조합되는 지 신경쓰지 않아도, path name과 인자만 넘겨주면 된다. URL reverse 코드는 같아도 참조하는 코드에 따라서 값이 달라질 수 있는 것이다. 4) > instagram 앱에서는 getobjector404 사용 시에 getuser_model() 함수가 들어갔는데 여긴 Use

[Django] 장고 Views를 활용한 HTTP 요청 처리#5_URL Reverse를 통해 유연하게 URL 문자열 및 응답 생성하기
1) > reverse, resolve_url, redirect 같은 경우는 파이썬 함수이다. 앞에 2개는 url 문자열을 생성하는 반면 redirect는 HttpResponse의 instance를 만들어준다. 이를 뷰에서 바로 쓸 수 있다고 한다. 2) > url reverse를 수행하기 위해서는 app name을 반드시 입력해야 한다. url patterns에 서로 다른 앱들의 같은 이름의 모델이 path로 입력되어 있다면 첫 번째 항목만 가져오기 때문이다.