Ming 0.3.2安装和导入但崩溃



安装Ming 0.3.2后,我通过运行以下代码来测试安装:

>>> from ming.datastore import DataStore
>>> bind = DataStore('mongodb://localhost:27017/', database='tutorial')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: __init__() got an unexpected keyword argument 'database'
>>> ^D

我查看了安装文件,在datastore.py文件中发现该类的构造函数不包含"数据库"参数。

class DataStore(object):
    def __init__(self, bind, name, authenticate=None):
        self.bind = bind
        self.name = name
        self._authenticate = authenticate
        self._db = None

然后,我安装了Ming 0.3.0来查看datastore.py文件,并找到了与文档匹配的datastore类(它包含一个数据库arg),然后在遇到其他复杂情况时尝试了那个版本。

我使用easy_install来安装Ming,并且我已经很好地安装了mongodb和pymongo。我在OS X Lion上运行这些。如有任何关于让明参选的建议,我们将不胜感激。

我认为可能与最新版本的pymongo和ming有冲突。

bind=数据存储('mongodb://localhost:27017/',name='test')让我走得更远,但我最终只使用了pymongo本身。

我也遇到过同样的问题。以下是我尝试过的步骤,它很有效!希望它对你的环境也有效。

  1. 卸载Ming 0.3.2版本的方法: pip uninstall Ming

  2. 安装0.3.0通过:pip install -Iv http://downloads.sourceforge.net/project/merciless/0.3.0/Ming-0.3.0.tar.gz

  3. 再试试明办公室网站上的例子。将出现另一个错误

    追踪(最近一次通话):
    文件"tutorial.py",第1行,在<模块>从ming.datastore导入数据存储

    文件"/home/me/work/deploy/test/local/lib/python2.7/site packages/ming/init.py",第3行,在<模块>从会话导入会话

    文件"/home/me/work/deploy/test/local/lib/python2.7/site packages/ming/session.py",第7行,在<模块>从pymongo.son导入son

    ImportError:没有名为son 的模块

  4. 将"/home/me/work/deploy/test/local/lib/python2.7/site packages/ming/session.py"的第7行更改为from bson.son import SON

  5. 再试一次。它会起作用的。

这是我引用的链接。这是一个日语网页,但你可以通过谷歌翻译将其翻译成英语。http://ryooo321.blogspot.com/2012/05/macsleepymongoose.html

尝试删除database=

In [8]: from ming.datastore import DataStore
In [9]: bind = DataStore('mongodb://grid:27017/', 'tutorial')
In [10]: bind.name
Out[10]: 'tutorial'

相关内容

  • 没有找到相关文章

最新更新