2016-05-29 8 views
0

models.pyでジャンゴの私のアプリでは、私は以下のモデルがあります:私はlkm.py でmodels.pyにlkmModelのインスタンスを作成しようとしているジャンゴ)PostgreSQLのモデルERROR

from django.db import models 
from django.contrib.postgres.fields import * 

class lkmModel(models.Model): 

    #Profile Image 
    profileUrls = ArrayField(base_field=models.TextField,size=5) 
    #profileUrls = models.TextField() 
    """profileUrl2 = models.TextField() 
    profileUrl3 = models.TextField() 
    profileUrl4 = models.TextField() 
    profileUrl5 = models.TextField()""" 
    #Profile Basic 
    name = models.CharField(max_length=20) 
    status = models.CharField(max_length=20) 
    age = models.IntegerField() 
    residence = models.CharField(max_length=20) 
    bloodType = models.CharField(max_length=20) 
    religion = models.CharField(max_length=20) 

    #KEY_WORD 
    personaltiy = models.TextField() 
    appearance = models.TextField() 
    hobby = models.TextField() 
    ability = models.TextField() 
    idealType = models.TextField() 
    career = models.TextField() 
    best = models.TextField() 
    badges = ArrayField(base_field=models.CharField(max_length=10)) 
    manual = models.TextField() 

    def __str__(self): 
     return self.name 

をlkm.pyの特派コードは以下の通りです:

Traceback (most recent call last): 
    File "/Users/kyungmoon/projectDicrectory/project/myApp/lkm.py", line 8, in <module> 
    from myApp.models import lkmModel 
    File "/Users/kyungmoon/projectDicrectory/project/myApp/models.py", line 2, in <module> 
    from django.contrib.postgres.fields import * 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/contrib/postgres/fields/__init__.py", line 1, in <module> 
    from .array import * # NOQA 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/contrib/postgres/fields/array.py", line 207, in <module> 
    class ArrayLenTransform(Transform): 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/contrib/postgres/fields/array.py", line 209, in ArrayLenTransform 
    output_field = IntegerField() 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/db/models/fields/__init__.py", line 166, in __init__ 
    self.db_tablespace = db_tablespace or settings.DEFAULT_INDEX_TABLESPACE 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/conf/__init__.py", line 55, in __getattr__ 
    self._setup(name) 
    File "/Users/kyungmoon/venv/myvenv/lib/python3.4/site-packages/django/conf/__init__.py", line 41, in _setup 
    % (desc, ENVIRONMENT_VARIABLE)) 
django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. 
:lkm.pyが実行されると、私は以下のエラーを得た
from myApp.models import lkmModel 

def createModel(self,pictures,basics,keywords,badges,manual): 
    lkmModelOne = lkmModel(profileUrls = pictures, name = basics[0] , status = basics[1] , 
         bloodType = basics[2] , age = basics[3] , religion = basics[4] , residence = basics[5], 
         personality= keywords[0], appearance = keywords[1] , hobby = keywords[2] , ability = keywords[3], 
         idealType = keywords[4], career = keywords[5] , best = keywords[6], badges = badges , manual = manual) 
    lkmModelOne.save() 

ご覧のとおり、postgresqlのpostgresqlとarrayFieldからのエラーです。 しかし、models.pyでは、正しい方法でlkmModelを作成しましたか?そうではありませんか?

どうしてですか?

ローカルマシンにpostgresqlをインストールし、lkmDBという名前のデータベースとそのためのテーブルを作成しました。 プロジェクトにsettings.pyに設定私のデータベースは、以下の通りです:この

DATABASES = { 
'default': { 
    'ENGINE': 'django.db.backends.postgresql', 
    'NAME': 'lkmDB', 
    'USER': 'kyungmoon', 
    'PASSWORD': '', 
    'HOST': '', 
    'PORT': '', 
} 

}

答えて

0

なしあなたが投稿したコードで行うには全く何もありません。

おそらく、これは普通のPythonシェルで行います。代わりにpython manage.py shellでDjangoシェルを起動する必要があります。

+0

ありがとうございました!私はPycharm IDEでlkm.pyを実行しました。これは 'python manage.py shell'の実行方法とは違いますか? Pycharmはすでにvirtualenvで動作しています。 – LKM

+0

私はPycharmについて何も知らないですが、Djangoを適切に実行するための設定方法がいくつかあります。そして、申し訳ありませんが、私はあなたの2番目のコメントを全く理解できません。 –

関連する問題