0

django.authという名前のモジュールが、私は次の変更を作っていますエラー私はAWS EC2インスタンス</p> <p>で、ファイルmodels.pyでジャンゴとのMongoDBを使ってブログを作成しようとしています

from datetime import datetime 
from mongoengine import * 
from mongoengine.django.auth import User 
from django.core.urlresolvers import reverse 

class Post(Document): 
    user = ReferenceField(User, reverse_delete_rule=CASCADE) 
    title = StringField(max_length=200, required=True) 
    text = StringField(required=True) 
    text_length = IntField() 
    date_modified = DateTimeField(default=datetime.now) 
    is_published = BooleanField() 

from django.core.urlresolvers import reverse 

class Post(Document): 
    user = ReferenceField(User, reverse_delete_rule=CASCADE) 
    title = StringField(max_length=200, required=True) 
    text = StringField(required=True) 
    text_length = IntField() 
    date_modified = DateTimeField(default=datetime.now) 
    is_published = BooleanField() 

    def __unicode__(self): 
     return self.title 

    def save(self, *args, **kwargs): 
     self.text_length = len(self.text) 
     return super(Post, self).save(*args, **kwargs) 

    def get_absolute_url(self): 
     return reverse('detail', args=[self.id]) 

    def get_edit_url(self): 
     return reverse('update', args=[self.id]) 

    def get_delete_url(self): 
     return reverse('delete', args=[self.id]) 

そして、私は

Traceback (most recent call last): 
     File "models.py", line 7, in <module> 
     from mongoengine.django.auth import User 
ImportError: No module named django.auth 

そして、settings.pyファイルで、私は次のように変更

を作っています。このエラーが出ます
import os 
from mongoengine import * 
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__)) 
# SECURITY WARNING: don't run with debug turned on in production! 
DEBUG = True 

TEMPLATE_DEBUG = True 

ALLOWED_HOSTS = ['54.149.63.203', 'localhost', '127.0.0.1'] 


# Application definition 

INSTALLED_APPS = (
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sites', 
'LJblog', 
'django_extensions', 
'mongoengine.django.mongo_auth', 

) 

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', 
    'django.middleware.security.SecurityMiddleware', 
) 

ROOT_URLCONF = 'LJ.urls' 

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', 
      ], 
     }, 
    }, 
] 

WSGI_APPLICATION = 'LJ.wsgi.application' 




DATABASES = { 
'default': { 
     'ENGINE': 'django.db.backends.dummy', 
     'NAME': '', 
     'USER': '', 
'PASSWORD': '', 
'HOST': '55.181.26.33', //mongodb ip address 
'PORT': '27017', 
    } 
} 



LANGUAGE_CODE = 'en-us' 

TIME_ZONE = 'UTC' 

USE_I18N = True 
USE_L10N = True 

USE_TZ = True 


MEDIA_ROOT = os.path.join(PROJECT_ROOT, '..', 'media') 
MEDIA_URL = '/media/' 
STATIC_ROOT = os.path.join(PROJECT_ROOT, '..', 'static') 
STATIC_URL = '/static/' 

STATICFILES_DIRS = (
     os.path.join(PROJECT_ROOT, 'static'), 
) 


TEMPLATE = (
os.path.join(PROJECT_ROOT, 'templates'), 
) 

AUTHENTICATION_BACKENDS = (
    'mongoengine.django.auth.MongoEngineBackend', 
) 
SESSION_ENGINE = 'mongoengine.django.sessions' 

AUTH_USER_MODEL = 'mongo_auth.MongoUser' 
MONGOENGINE_USER_DOCUMENT = 'mongoengine.django.auth.User' 
MONGO_DATABASE_NAME = 'LJ_blog' 
from mongoengine import connect 
connect(MONGO_DATABASE_NAME) 

インポートエラーを解決するにはどうすればよいですか?

+0

syncdbコマンドを実行しましたか? – rkatkam

+0

@rkatkam、私はsyncdbが廃止され、migrateに置き換えられたと思うので、私はsyncdb – pavikirthi

答えて

1

DjangoサポートはMongoEngineから0.10.0で削除されました。以前のバージョンを動作させることができるかもしれませんが、最近のバージョンのDjangoはサポートしていないかもしれません。

mongoengine 0.10で、私たちは

/usr/lib/python2.7/site-packages/mongoengine/

はそれでDjangoのパッケージを持っていないことがわかります。 は

sudo pip install mongoengine==0.9

を使用してmongoengine 0.9をインストールし、Djangoのパッケージ(サポートまたは拡張)が利用できるようになります。

+0

を使用していませんでしたし、このpipをアンインストールしなければなりませんpymongo pip install pymongo == 2.8 その他にもいくつかありますエラー、MongoEngineなしでこれをどう対処するか考えていますか? – pavikirthi

+0

実際にpymongoには最近のバージョンのpymongoにもいくつかの問題がありますので、私はそれを2.8にダウングレードする必要があります。 –

関連する問題

 関連する問題