백엔드 16

django - OneToMany realation - foreignKey

https://docs.djangoproject.com/en/4.1/topics/db/examples/many_to_one/ Django The web framework for perfectionists with deadlines. docs.djangoproject.com 디비 구성을 하다보면 한개의 모델에 여러개의 다른 모델을 연결하고 싶을때가 있다. 결국 모델간에 1:N 대응을 만드는 일이다. 코드로는 아래와 같다. from django.db import models class Reporter(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=30) email = model..

백엔드 2023.01.15

<장고 django> 장고 Search Form & Request Data 만들기

22강 정리입니다. html form에 name을 주고 검색을 하면 이런식으로 name이 붙어서 나온다. form에 action도 새로 알게됐는데, 검색하면 action의 링크로 간다. 뒤에 q랑 검색어가 붙어서 form에 method를 GET으로 해줌으로서 GET으로 넘어가는듯? 위 쿼리를 받아 사용하는 부분은 아래와 같다. def article_search_view(request): # print(dir(request)) # 이걸로 요청을 알 수 있어. print(request.GET) # 이게 나오네 query_dict = request.GET # this is a dictionary query = query_dict.get("q") try: query = int(query_dict.get("q")..

백엔드 2022.05.17

<장고 Django> Register Model in the Admin, 어드민 페이지에 모델 추가하기.

21강 강의 정리 내용. 생성한 장고 앱에 가서 from django.contrib import admin # Register your models here. from .models import Article admin.site.register(Article) admin.site.register(Article)이라고 쳐주면 이렇게 Articles 모델들을 관리할 수 있게 된다. 추가로 보여주고자 하는 필드를 정할 수 있다. class ArticleAdmin(admin.ModelAdmin): list_display = ['id', 'title'] search_fields = ['title', 'content'] admin.site.register(Article, ArticleAdmin) content는 빼..

백엔드 2022.05.17

<장고 django> Dynamic URL Routing, 동적 url 라우팅하기

https://www.youtube.com/watch?v=SZgcwhLTK_k&list=PLEsfXFp6DpzRMby_cSoWTFw8zaMdTEXgL&index=19 urlpatterns = [ path("", home_view), #index/home/root path('articles//', home_view), path('admin/', admin.site.urls), ] urls.py 함수에 위와 같이 articles에 대한 패스를 추가했다. 로 올 수 있는 타입을 알려준다. def home_view(request, *args, **kwargs): print(args, kwargs) 그리고 *args, **kwargs로 위에서 넘겨준 int에 대한 인자를 받는다. 밑에가 출력. () {'id': ..

백엔드 2022.05.17

<장고 Django> 장고 강의 추천3, 18강 뷰에서 데이터를 리스트로 표현하기

https://www.youtube.com/watch?v=YSlCrUZGnN0&list=PLEsfXFp6DpzRMby_cSoWTFw8zaMdTEXgL&index=18 {% for x in my_list %} {{ x }} {% endfor %} 뷰에서 데이터를 리스트로 표현하는 방법이 있다라... html 파일(뷰)에서 데이터를 리스트로 표현하는 방법...! 템플릿에서 문자열에 for을 넣어 표현해도 렌더링 되지 않아서 여기서 해야됨 {% for x in object_list %} {% if x.title %}

백엔드 2022.05.16

<장고 django> 초보자 장고 강의 추천, 장고 뷰 템플릿 사용, 장고 데이터베이스인 모델 사용하기, 장고 app 추가로 만들기

https://www.youtube.com/watch?v=4uNeO5Hw9FE&list=PLEsfXFp6DpzRMby_cSoWTFw8zaMdTEXgL&index=18 python manage.py startapp articles 위 명령어를 통해 project안에 app을 따로 만들 수 있다. 이미 lib파일을 보면 django라는 이름의 기본 앱이 이미 있음. 그 앱안에 admin 기능들이 있음. setting.py 파일을 보면 다양한 세팅이 가능한데 db에 대한 설정도 여기서 가능하다. 그리고 view를 그리기 위해 장고 템플릿을 사용하는데 render_to_string을 통해서 장고 뷰 템플릿에 데이터를 넣는다. 데이터베이스는 models를 통해서 생성한다. from django.db import ..

백엔드 2022.05.16

<스프링 부트> 스프링 부트 에러... 하라는대로 했는데 왜 안되지? 디비 연결 에러, Error creating bean with name ~

요 몇일 스프링 부트 튜토리얼을 따라하고 에러가 발생했었다. https://covenant.tistory.com/243 https://blog.jiniworld.me/29?category=850715 한 블로그 대로 해도 안되서, 다른걸 다시 해봤는데도 안되었다. 결국 내 문제였던것... 원인을 명확히 몰라서 해결이 어려웠는데 웃기게 수정한게 다시 에러를 일으켜서 돌아돌아 근본적인 원인을 찾았다. 원격 디비를 연결하는 부분이 문제여서, bean이 생성이 제대로 안되었던 것이다. 즉 로컬 코드에 의한 빈 생성이 문제가 아니라, 근본적으로 원격 디비랑 연결이 안되어 있어서 생긴 문제... 아마 찾아보면 패키지 위치를 제대로 하고, 빈 레포지토리나 서비스 컨트롤러임을 알려주도록하는 어노테이션을 추가하라는 말이..

<스프링부트> Error executing DDL "create table user ~ type=MyISAM" via JDBC Statement

https://firework-ham.tistory.com/106 [Spring Boot JPA] JPA를 사용하기 위해 꼭 필요한 Dialect(방언)에 대해 알아보자. Dialect(방언)이란? Dialect 방언에 대해 알아보기전 기본 SQL을 이해 해야 합니다. SQL은 표준 ANCI SQL이 있고 DBMS Vendor(공급업체)인 MS-SQL, Oracle, My-SQL, Postgre SQL에서 제공하는 SQL이 존재합니다... firework-ham.tistory.com 내 경우는 application.properites에 나는 마리아 디비인데 mysqldilect로 되어 있었다. 일단 이거만 고쳤더니 아래처럼 Error executing DDL "create table hibernate_s..