Toy project django error 모음

jongeun·2022년 12월 29일
0

1. views에서 def를 만들고 pass를 넣어줬을때, 웹에서 아래와 같은 에러 발생

에러메세지
The view bibles.views.index didn't return an HttpResponse object. It returned None instead.

해결방법
return코드를 넣어주면 됨
단, 이전에는 pass넣는 경우 def작동하여 잘 열렸으나, 현재는 return값을 명시해야 되는 이유를 모르겠음.
아시는 분이 계시다면 댓글 부탁드립니다.

2. views.py에서 csv파일을 db에 저장하려 할 때, db 저장 되지 않고 터미널에서 아래 에러 발생

에러메세지
ImportError: attempted relative import with no known parent package

해결방법
runserver
⚠️⚠️⚠️⚠️그리고 가장 중요한것 !! 서버만 켰는데 안되서 이틀동안 스트레스 받았는데, 서버키고 def에 해당하는 Url로 접속해야 된다!!⚠️⚠️⚠️⚠️
(단. 해당하는 url새로침하는 경우(서버가 실행될때마다) db에 똑같은 데이터가 더해지므로, 아래 if 조건 절 추가 필요)

def index(request):
    item = Item.objects.all()

    if len(item) == 0:
        items_csv = open("bibles/bible3.csv", encoding="UTF-8")
        items_reader = csv.reader(items_csv)
        bulk_list = []
        for i in items_reader:
            bulk_list.append(
                Item(
                    content=i[0],
                    content_en=i[1],
                    vers=i[2],
                    vers_en=i[3],
                    keyword=i[4],
                )
            )
        Item.objects.bulk_create(bulk_list)

    context = {
        "item": item,
    }
    return render(request, "bibles/index.html")

참고링크(단비같은 해결방법이 적혀져 있는 링크, 도움 많이 받았다.)
1) https://stackoverflow.com/questions/70522086/django-model-importerror-attempted-relative-import-with-no-known-parent-package
2) https://wisenrich.com/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%9E%A5%EA%B3%A0-csv-%ED%8C%8C%EC%9D%BC-%EC%9D%BD%EA%B8%B0%EC%99%80-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4db-sqlite3%EC%97%90-%EC%A0%80%EC%9E%A5/

3.random 모듈을 import했을 때, choice 또는 sample 속성이 없다고 나옴

에러메세지
AttributeError: 'module' object has no attribute 'choice'

해결방법
스크립트 이름을 random.py 처럼 모듈과 같은 이름으로 지정하면 안됨
스크립트 이름 변경

참고링크
https://stackoverflow.com/questions/25695412/module-object-has-no-attribute-choice-trying-to-use-random-choice

profile
기록으로 성장하는 개발자 되기

0개의 댓글