3

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で実行します。Ming の実行に関するアドバイスをいただければ幸いです。

4

3 に答える 3

2

pymongo と ming の最新バージョンと競合する可能性があると思います。

bind = DataStore('mongodb://localhost:27017/', name='test') はもう少し先に進みますが、最終的には pymongo を単独で使用することになりました。

于 2012-09-13T17:55:23.513 に答える
0

を削除してみてくださいdatabase=

In [8]: from ming.datastore import DataStore

In [9]: bind = DataStore('mongodb://grid:27017/', 'tutorial')

In [10]: bind.name
Out[10]: 'tutorial'
于 2012-12-22T00:07:55.287 に答える