을 기본 데이터베이스로 로컬로 장고 1.9 프로젝트를 만들었습니다. 나는 DownloadedSongs
테이블 models.py
에서 정의 Download
라는 응용 프로그램이 있습니다 Heroku가 내 로컬 프로젝트를 배포하기 위해,Django on Heroku : 관계가 없습니다.
from __future__ import unicode_literals
from django.db import models
class DownloadedSongs(models.Model):
song_name = models.CharField(max_length = 255)
song_artist = models.CharField(max_length = 255)
def __str__(self):
return self.song_name + ' - ' + self.song_artist
이제
models.py를, 나는 맨 아래에 다음 줄을 추가 내 settings.py
파일 :
import dj_database_url
DATABASES['default'] = dj_database_url.config()
내 응용 프로그램은 텍스트 필드의 몇 형태를 가지고 있으며, 그 양식을 제출하기에, 데이터는 DownloadedSongs
테이블에 삽입됩니다. 내가 Heroku가 내 프로젝트를 배포하고이 양식을 제출하려 할 때 지금, 나는 다음과 같은 오류가 발생했습니다 :
Exception Type: ProgrammingError at /download/
Exception Value: relation "Download_downloadedsongs" does not exist
LINE 1: INSERT INTO "Download_downloadedsongs" ("song_name", "song_a...
이 내 requirements.txt
파일과 같은 모습입니다 : 또한
beautifulsoup4==4.4.1
cssselect==0.9.1
dj-database-url==0.4.1
dj-static==0.0.6
Django==1.9
django-toolbelt==0.0.1
gunicorn==19.6.0
lxml==3.6.0
psycopg2==2.6.1
requests==2.10.0
static3==0.7.0
, 내가하려고 않았다 다음 명령도 실행하십시오.
heroku run python manage.py makemigrations
heroku run python manage.py migrate
그러나 문제는 여전히 지속됩니다. 여기에 뭐가 잘못 됐나? 당신은 내가 생각 Heroku가에 배포 할 때
데이터베이스에 액세스하여 테이블 이름을 볼 수 있습니까? 테이블이 모두 소문자 일 가능성이 있습니까? 또는 syncdb 명령을 실행해야합니까? – Furbeenator
'syndb' 명령은 Django 1.9에서 더 이상 사용되지 않습니다. 그러나 나는 'makemigrations' 명령을 실행했는지 확인했습니다. –