SQL BD 조작언어이다. 우리는 장고를 사용할 때 ORM 으로 쓴다. Flask는 다른 ORM을 가진다. Object = 객체(python) Relational = DB라고 생각하자 Mapper = 위의 2개를 연결 즉, python 객체조작(method호출)으로 DB를 조작한다. ORM은 DB와 객체사이에서 Mapping 해준다. ORM(Object Relational Mapping) CRUD하기 위해 필요한 개념이 ORM 객체조작을 통해 DB를 조작 다양한 SQL에 상관없이 개발가능 DB 조작을 python 코드로 가능 Object 조작을 통해 데이터 베이스를 조작 Article object를 조작해보자.(Article class를 모델에 만든 후의 상황) >pip install django-ext..
Django에서 Form을 언제 쓸까? 사용자가 정보를 적을 수 있게 from양식을 사용자에 준다. 그 후에 Form을 통해 사용자가 보낸 정보를 사용한다. 일단 예시를 보고 흐름을 간단히 이해를 해보자. 제목 : 내용 : form내부의 action에서 /의 중요성 지금부터 하드typing을 했을 때 POST에서 발생 할 수 있는 오류를 알아보자. 뒤의 / 제외 시 ex) action="/article/create" method="POST" Error내용은 GET을 할 떄만 redirect 되다 보니, POST를 내부적으로 /를 닫는 형식으로 처리하고 싶었지만, POST 요청으로는 불가능하다고 뜬다. GET 요철일 떄는 error 안뜬다. 쉽게 말하면 redirect 할 때, POST 데이터를 들고 다른..
상세보기 게시판에서 글관련해 제목이나 특정 버튼을 누르면 들어가서 볼 수 있게 하는것이다. 그리고 detail.html부분은 구현 난이도에 따라 여러가지 방식을 적어두었고, 계속 추가할 예정이다. Variable routing 고유한 글을 보기 위해서는 id(primary key)가 필요하다. 따라서 아래코드의 굵은 글씨는 같은 값을 써야한다. index.html에 아래와 같이 a태그를 추가하자. 글 보러가기 urls.py path('', views.detail) views def detail(request, article_pk): article = Article.objects.get(id=article_pk) : 이때 id 대신 pk로 적어도 동일한 값이 저장된다. context = { 'article..
문제점 views의 return에서 내가 반환하려는 html이 반환이 안된다. url분리 후에 app 안에서 views를 설정했다. views는 아래와 같다. def indes(request): return render(request, 'index.html') 위의 코드의 문제점은 무엇일까?? 장고는 모듈로 관리를 하기 때문에 각각의 app의 templates 안의 html을 모두 하나로 모아서 인식을 한다. 따라서 위의 코드 처럼 하면, url를 정확히 했다 하더라도 다른 app의 index.html이 뜰 수도 있다. 장고의 탐색 순서는 INSTALLED_APPS에 등록한 순서로 찾고 바로 반환한다. 따라서 위쪽에 등록된 app에서 같은 이름의 html이 있다면 그걸 바로 반환한다. html 중복의 해..
페이지를 와따가따하기 위한 tag a 태그를 이용한다. ex) 페이지 목록 a 태그와 form의 action 사용시 주의점 a href ="/ /" action ="/ /" 앞 쪽에 닫는 태그를 꼭 붙여야 한다. 안 붙이면 현재의 url에 추가로 붙는다. (즉, 원하는 페이지로 이동을 하지 안고 url 길이만 길어진다.) /을 붙여 주면 처음 부분에 붙는다. 장고 내부의 클래스는 CamelCase이다 class Article(models.Model): title = models.CharField(max_length=140) content = models.TextField() +반대는 snake_case PYTHON python 의 함수/변수 이름은 항상 Snake_case이다 python 의 클래스는 C..
편의성을 위해 app당 url을 따로 만들어서 관리를 할 예정이다. app 이 여러개이 경우에 urls.py를 필수적으로 분리하여 관리하자. ex) 게시판을 만들려면, 회원계정을 관리하는 app과 게시글을 관리하는 app를 나눠서 url 설정을 하자. 코드 예시 from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('articles/', include('articles.urls')) ] 위는 프로젝트를 생성하면 있는 urls.py에 코드를 추가한 것이다. 기본적으로 include를 포함시킴으로 url분리를 할 수 있다. path('art..
틈틈히 필요할 때 마다 추가를 하겠다. settings.py 의 55번째 줄 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] 'BACKEN..
- Total
- Today
- Yesterday
- pandas
- nodejs
- TensorFlow
- mongoDB
- typescript
- Vue
- DFS
- useHistory 안됨
- JavaScript
- next.config.js
- 자료구조
- useState
- django
- Express
- vuejs
- Queue
- Python
- NextJS
- logout
- nextjs autoFocus
- error:0308010C:digital envelope routines::unsupported
- BFS
- react autoFocus
- 클라우데라
- read_csv
- 자연어처리
- login
- Deque
- UserCreationForm
- react
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |