标签: django-mongodb-engine

ImportError:没有名为objectid的模块

我目前在我的Mac OS X 10.6.8上安装了django-mongodb-engine 0.4.0版本,并且在导入"编译器"模块时奇怪地遇到了一个有趣的错误:

>> from django_mongodb_engine import compiler
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

ImportError Traceback (most recent call last)
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django_extensions/management/commands/shell_plus.pyc in <module>()
----> 1 from django_mongodb_engine import compiler

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django_mongodb_engine/compiler.pyc in <module>()
      15 from pymongo.errors import PyMongoError
      16 from pymongo import ASCENDING, DESCENDING
 ---> 17 from pymongo.objectid import ObjectId, InvalidId
      18 
      19 from djangotoolbox.db.basecompiler import NonrelQuery, NonrelCompiler, \

ImportError: No module named objectid
Run Code Online (Sandbox Code Playgroud)

我通过pip命令安装了包,并且已经安装了所有依赖,如pymongo,djangotoolbox.我使用的pip命令是这样的:

>> sudo env ARCHFLAGS='-arch i386 -arch x86_64' pip …
Run Code Online (Sandbox Code Playgroud)

python django mongodb pymongo django-mongodb-engine

11
推荐指数
1
解决办法
2万
查看次数

找不到命令'git' - windows

我正在尝试使用我的python django应用程序安装mongodb_engine,但是我收到此错误

 Cannot find command 'git'
Run Code Online (Sandbox Code Playgroud)

我正在尝试从mongodb文档中获取此命令.http://django-mongodb-engine.readthedocs.org/en/latest/topics/setup.html

pip install git+https://github.com/django-nonrel/django@nonrel-1.5
Run Code Online (Sandbox Code Playgroud)

我相信这里的git导致问题,因为项目存储在git repo中.有没有办法安装git来运行这个pip命令?我试过多个来源,但无法让它工作.

django pip django-mongodb-engine

9
推荐指数
2
解决办法
3万
查看次数

django.core.exceptions.ImproperlyConfigured:'django_mongodb_engine'不是可用的数据库后端

我无法正常运行django mongo引擎.

我在settings.py中的数据库条目是

DATABASES = {
'default': {
    'ENGINE': 'django_mongodb_engine',
    'NAME': 'local',
}
}
Run Code Online (Sandbox Code Playgroud)

我的pip冻结结果是

Django==1.8.2
django-mongodb-engine==0.5.2
djangotoolbox==1.6.2
pymongo==3.0.2
Run Code Online (Sandbox Code Playgroud)

运行时出错

python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

django.core.exceptions.ImproperlyConfigured: 'django_mongodb_engine' isn't an available database backend.
Try using 'django.db.backends.XXX', where XXX is one of:
u'base', u'mysql', u'oracle', u'postgresql_psycopg2', u'sqlite3'
Error was: cannot import name BaseDatabaseFeatures
Run Code Online (Sandbox Code Playgroud)

任何建议如何解决这个问题.

python django mongodb django-mongodb-engine

9
推荐指数
2
解决办法
8354
查看次数

Mongo引擎查询引用域

我已经定义了类声明:

from mongoengine import *
class TickDataDocument(Document):
"""
"""
    instrument_id = StringField(max_length=10, unique=True, required=True)
    tick_data = ReferenceField(TickDocument)


class TickDocument(Document):
"""
"""
    price = DecimalField(precision=2, required=True) 
    volume = LongField(required=True)  
    turnover = DecimalField(precision=2, required=True)  
    update_time = DateTimeField(unique=True, required=True)
Run Code Online (Sandbox Code Playgroud)

我想在一段时间内查询update_time.

 TickDataDocument.objects(instrument_id="fa1100").filter(tick_data__ update_time__lt =datetime.datetime(2013,9,3))
Run Code Online (Sandbox Code Playgroud)

但是我得到了错误:

mongoengine.errors.InvalidQueryError:无法在mongoDB中执行连接:tick_data__update_time

我怎么能有五个解决方案来查询mongoengine中的内部引用字段.

python mongodb django-mongodb-engine

7
推荐指数
1
解决办法
1201
查看次数

Django rest-framework DjangoModelPermissions允许任何经过身份验证的用户的问题

我试图使用DjangoModelPermissions,它似乎无法正常工作.

这是代码:

class TestViewSet(viewsets.ModelViewSet):
    model = Test
    serializer_class = serializers.TestSerializer
    permission_classes = (permissions.DjangoModelPermissions,)

    def create(self, request):
        response_data = {}
        response_data['type'] = 'error'
        data=json.loads(request.raw_post_data)

        test = Test.objects.create(name=data['name'],\
                                            description=data['description'],\
                                            start_date=data['start_date'],\
                                            end_date=data['end_date'])          

        #save changes
        test.save()
        return Response({'status': 'ok', "result": test.id})
Run Code Online (Sandbox Code Playgroud)

我不认为这种情况有什么不同,但我使用的是django_mongodb_engine.

我有一个没有权限的用户,它可以创建测试实例.另一方面,我如何阻止GET,以便具有正确权限的用户可以执行该操作?

谢谢

django django-rest-framework django-mongodb-engine

6
推荐指数
1
解决办法
1047
查看次数

raise ImproperlyConfigured,exc_info [1],exc_info [2]

我创建了一个django(1.6.1)项目并使用mongodb.当我运行python manage.py runserver 0.0.0.0:8000启动服务器时,它给我以下错误

  File "D:\Python34\lib\importlib\__init__.py", line 129, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 2186, in _gcd_import
  File "<frozen importlib._bootstrap>", line 2169, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2158, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1209, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1133, in _exec
  File "<frozen importlib._bootstrap>", line 1432, in exec_module
  File "<frozen importlib._bootstrap>", line 1537, in get_code
  File "<frozen importlib._bootstrap>", line 1497, in source_to_code
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File …
Run Code Online (Sandbox Code Playgroud)

python django django-nonrel django-mongodb-engine

3
推荐指数
1
解决办法
2478
查看次数

Django contrib.auth.models.User与Django MongoDB引擎

你可以使用contrib.auth.models.User或任何contrib.auth和Django MongoDB引擎吗?

我按照指示配置了MongoDB引擎,并且适用于自定义模型,但是:

from django.contrib.auth.models import User
a = User.objects.create_user(username='foo', email='foo@bar.com',
                             password='foo123bar')
a.save()
    ...
    ERROR: An unexpected error occurred while tokenizing input
    The following traceback may be corrupted or invalid
    The error message is: ('EOF in multi-line statement', (5, 0))
    ...

    ValueError: invalid literal for int() with base 10: '4f3757d4eb60261dae000001'
Run Code Online (Sandbox Code Playgroud)

有没有办法使用普通的用户模型和auth系统,还是我现在必须实现自己的?

如果它目前不受支持或者是未知的领域,那么有没有办法将用户存储在mysql中,所有我的mongodb引擎模型都存储在MongoDB中?

django django-models mongodb django-mongodb-engine

2
推荐指数
1
解决办法
892
查看次数

django.core.exceptions.ImproperlyConfigured:name必须是basestring的一个实例

我试图Mongodb在我的Django.

下面是连接设置 settings.py

DEBUG = True
TEMPLATE_DEBUG = DEBUG

ADMINS = (
    # ('Your Name', 'your_email@example.com'),
)


MANAGERS = ADMINS



DATABASES = {
    'default': {
        'ENGINE': 'django_mongodb_engine', 
        'NAME': '',                      
        'USER': '',                      
        'PASSWORD': '',                  
        'HOST': 'localhost',                      
        'PORT': 27017,                      
    }
}
Run Code Online (Sandbox Code Playgroud)

当我试图运行时,python manage.py syncdb我收到这样的错误:

Traceback (most recent call last):
  File "manage.py", line 11, in <module>
    execute_from_command_line(sys.argv)
  File "/home/sakeer/workspace/entevirtual/lib/python2.7/site-packages/django/core/management/__init__.py", line 429, in execute_from_command_line
    utility.execute()
  File "/home/sakeer/workspace/entevirtual/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/sakeer/workspace/entevirtual/lib/python2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv …
Run Code Online (Sandbox Code Playgroud)

django mongodb django-nonrel django-mongodb-engine

2
推荐指数
1
解决办法
2466
查看次数

直接在django中使用pymongo

我正在使用Django和MongoDB构建一个网站.有2个,我们可以用它来连接流行的API框架DjangoMongoDB,一个是mongoengine,另一个是django-mongodb-engine.

因为mongoengine不再支持Django 最新的Document,并且django-mongodb-engine需要另一个django-nonrel使开发环境有点复杂的软件包.

我想知道,如果我可以使用Pymongo连接DjangoMongoDB直接.

有没有人可以分享相同的经验?以及如何setting.py在Django中设置db in 以使db公开?

django mongodb pymongo mongoengine django-mongodb-engine

1
推荐指数
1
解决办法
7005
查看次数