분류 전체보기 (278) 썸네일형 리스트형 명령어 pwd :현재 디렉토리 확인 ls -al : list all unzip 파일 : 압축풀기 tree : tree 구조로 보기 !!원래의 명령어가 아님 sudo apt-get install tree 필요 mkdir :디렉토리 만들기 vi : 편집기 명령 i: 삽입 a:뒤에추가 x:커서 위치 삭제 dd: delete line wq: write and quit q! :quit! 배포시 주의점 1. secrey key txt로 따로 저장하자 SECRET_KEY = os.environ['SECRET_KEY'] 혹은 with open(os.path.join(BASE_DIR,'웹 디렉토리','secret_key.txt')) as f: SECRET_KEY =f.read().strip() 2.DEBUG false 로 하자, 노출되면 안되는 항목이다. 그리고 이 경우 ALLOWED_HOSTS를 지정하자 DEBUG = true로 할 경우에는 자동으로 ALLOWED_HOSTS가 로컬호스트가 된다. 3.STATIC_ROOT STATIC_ROOT =os.path.join(BASE_DIR,'웹 디렉토리','satatic) 하고 정적파일 지정된 디렉토리에 모으기 !!주의 STATICFILES_DIRS 에 STATI.. django.urls.exceptions.NoReverseMatch m.blog.naver.com/PostView.nhn?blogId=hist0134&logNo=220319088307&proxyReferer=https:%2F%2Fwww.google.com%2F Django NoReverseMatch Error 이 에러도 역시 딱히 한글로 된 (내가 보기 편한) 해결책이 없길래포스팅 해보겠습니다 Django에서 URL... blog.naver.com 장고 프로젝트 순서2 - 뷰 클래스형 뷰로 정의 1.인덱스 페이지 인덱스 페이지는 TemplateView 를 상속해서 구현하면 편하다 오버라이딩이기 때문에 template_name 변수를 지정해야한다. 템플릿 시스템으로 넘겨줄 컨텍스트 변수가 있으면 def get_context_data() 재정의 한다. 변수는 context= super().get_context_data() 재정의 이때 super() 꼭 쓰자 return도 필수이다. 2.리스트뷰 페이지 ListView를 상속받는다. model 필드만 재정의하면 된다. 디폴트 속성이 있는데 컨텍스트 변수로 object_list를 사용하고 템플릿 파일을 소문자모델명_list.html 로 사용한다. 예시 class BookList(ListView): model = Book #Book에 .. 장고 프로젝트 순서 기본1 -모델 MTV 에서 모델 models.py에서 1.테이블 정의 class 테이블명(models.Model): 칼럼1 = models.필드 제공 함수() 칼럼2 = models.ManyToManyField('관계테이블') #N:N 관계에 있을때의 필드 칼럼3 = models.ForeignKey('FK',on_delete=models.CASCADE) #on_delete는 필수지정 def __str(self): return self.표시하고 싶은 테이블명 2. admin.py에 등록 터미널에 python manage.py createsuperuser 로 admin을 만들고 admin.py에 admin.site.register(테이블) 3.URLconf 등록 프로젝트 Urls.py 에 어플리케이션 url 등록 *args **kwargs *args 튜플형태로 값이 들어오고 **kwargs 는 딕셔너리 형태로 값이 들어온다. 제네릭 뷰 제네릭 뷰는 클래스형 뷰이다. 제네릭뷰란 장고가 제공하는 공통된 로직의 뷰이다. 제네릭 뷰를 상속해서 클래스형 뷰를 만들때가 많다. 분류 1.Base View : 뷰 클래스를 생성하고, 다른 제네릭뷰의 부모 클래스 제공, 기본 제네릭 뷰 2.Generic Display View : 객체의 리스트나 특정 객체의 정보 제공 3.Generic Edit View : 객체 생성, 수정, 삭제 4.Generic Date View : 날짜 객체의 연/월/일 페이지 제공 클래스형 뷰에서의 폼 처리 과정 1.최초의 GET : 사용자에게 폼을 처음으로 보여줌 2.유효한 데이터를 가진 POST :데이터를 처리함, 주로 리다이렉트 3.유효하지 않은 데이터를 가진 POST: 보통은 에러메시지 출력+ 폼 재출력 클래스형 뷰 A.진입메소드 진입메소드는 클래스를 선언하는 메소드이다. 예시 urls.py에서 urlpatterns=[ path('about', MyView.as_view()) ] 이때 as_view()가 진입메소드이다. 이런 진입메소드는 인스턴스를 생성하고 dispatch()메소드를 호출 dispatch()는 get, Post 형식을 구별하고 인스턴스 내에서 해당 이름의 메소드 요청을 한다. 메소드가 없으면 HttpResponseNotAllowed 예외를 띄운다. as_view()와 dispatch() 는 django.Views.generic.View 클래스에 정의되어 있다. django.Views.generic.View 를 상속받는 클래스 를 만들자. B.클래스형 뷰는 함수형과 클래스형이 있다. 함수형 예시 def.. 이전 1 ··· 27 28 29 30 31 32 33 ··· 35 다음