問題タブ [ming]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ld - ld.exe、最終的なリンクに失敗しました: アクセス許可が拒否されました - 書き込みアクセス: はい、プロセスはまだ実行中です: いいえ
奇妙なエラーがあります。それはどこからともなく飛び出しました。私は喜んで(Eclipse + MingW)をビルドしていましたが、あるビルドで突然このメッセージが表示されました
c:/mingw/mingw32/bin/ld.exe: 最終リンクに失敗しました: 許可が拒否されました
通常、これは次の 2 つの場合に発生します。
- ビルド ターゲットへの書き込みアクセスなし
- コンパイルされた exe がまだ非表示で実行されている
私の場合、両方のケースがfalseです(エラーが発生するたびに両方を二重にチェックし、Eclipseを離れることなく、問題なく以前に数回コンパイルしました)。
ビルド スペースをクリーンアップする (Project->Clean...) ことで回避できますが、一部のビルドで後で再び発生し始めます。
この失敗の原因となる他の状況は何ですか? そして、それを解決する方法は?
python - mongodbでmingを使用して関連アイテムで並べ替える
設定
mingをmongodbのORMとして使用するTurboGears2プロジェクト。私はリレーショナルデータベースとDjangoORMの操作に慣れています。
質問
Mingは、mongodbをリレーショナルデータベースのように操作できるようにすると主張しており、リレーショナルデータベースで行う一般的なことは、外部キーのプロパティでクエリを並べ替えることです。Django ORMでは、これは次のように2つのアンダースコアで表されます。MyModel.objects.all().order_by('user__username')
mingでこれに相当するものはありますか?
python - テスト可能な方法で mongodb に接続する
Flask と MongoDB (そしておそらく ODM として Ming) を使用して、Python で webapp を作成する予定です。問題は、モデルとコントローラーを十分に分離したいということです。その理由の 1 つは、別個のコンポーネントで単純な単体テストを実行できるようにするためです。
ここに私の問題があります。リクエストのライフサイクルのある時点で、MongoDB に接続する必要があります。各リクエストには個別の接続があります。Flask は、リクエストに対してグローバルな変数を含むことができるスレッド ローカル オブジェクトを提供します。これは、mongo 接続を配置するのに適しているようです。ただし、これにより、データ層と Flask の間に強い依存関係が生じ、それらを個別にテストまたは実行することが非常に困難になります。
したがって、私の質問は、これに対するエレガントな解決策があるかどうかです。私は自分でいくつかのオプションを考え出しましたが、それらはエレガントとはほど遠いものです。
まず、接続オブジェクトをどこから取得するかを伝える関数をデータ モジュールに与えることができます。または、同様に、新しい接続を取得するために使用できる関数を渡します。
2 番目のオプションは、モジュールが MongoDB への接続を取得するために使用できるクラスを作成し、このクラスの 2 つのバージョンを作成することです。1 つは Flask のグローバル オブジェクトを使用し、もう 1 つは単純に MongoDB に接続します。
これらは両方とも、私には本当に堅牢でもエレガントでもないようです。これを改善する方法はありますか?
python - Ming MapperExtensions の使用法
公式の Ming ドキュメントから MapperExtension を使用しようとしました。ドキュメントを作成すると、次のようになります。
python - Ming ODM でカスタムタイプをマップするには?
Ming ODM でマッピングを設定中です。発生した 1 つの問題は、カスタム タイプをフィールドにマップする方法と、そのカスタム タイプをフィールドに渡す方法です。.query
基本的に、顧客 ID を表すオブジェクトがあります。FieldProperty が、組み込み型ではなく、この型のオブジェクトを取得して返すようにしたいと考えています。型は int との間で変換可能で、Mongo では int として格納されますが、データ モデルやその他の Python コードでは、このドメイン固有の型として渡したいと考えています。
CustomerID 型のインスタンスを kwd 引数として に直接渡すと.query
、PyMongo は型を理解できないと文句を言います。
python-2.7 - WSGI 後処理クリーンアップ
mod_wsgi と apache で TurboGears アプリを実行しており、永続化のために Ming でラップされた pymongo を使用しています。私のアプリをフェイルプルーフしてスケーリングするために、私は pymongo ReplicaSetConnectionを介して mongo のレプリカ セットのサポートを使用することに興味がありました。
ただし、上記のリンクで指定されているように、close()
すべての pymongoReplicaSetConnection
オブジェクトで完了したときに呼び出す必要があります。そうしないと、一連のゾンビ プロセスが浮かんでいます (wtf pymongo)。この種の動作は Ming ではあまりサポートされていません (実際にはレプリカ セットはまだサポートされていません) が、すべての pymongo 接続を閉じるクリーンアップ関数を書くことができました。
ここで、すべてのアプリ プロセスのプロセス クリーンアップでクリーンアップ関数を実行したいと考えています。これらには 2 つの基本的なエントリ ポイントがあります。mod_wsgi による apache および paster コマンドです。クリーンアップを paster コマンドに追加しても問題ありませんが、wsgi プロセスのクリーンアップ機能を指定する方法はありますか?
そうでない場合、これを正しく設定するための他のアドバイスはありますか?
mongodb - Ming 0.3.2 をインストールしてインポートするがクラッシュする
Ming 0.3.2 をインストールした後、次のコードを実行してインストールをテストしました。
インストール ファイルを調べたところ、datastore.py ファイルで、クラスのコンストラクターに「データベース」引数が含まれていないことがわかりました。
次に、Ming 0.3.0 をインストールして datastore.py ファイルを確認し、DataStore クラスがドキュメント (データベース arg が含まれていた) と一致することを確認し、他の問題が発生したバージョンを試しました。
easy_install を使用して Ming をインストールし、mongodb と pymongo を適切にインストールして実行しています。これらをOS X Lionで実行します。Ming の実行に関するアドバイスをいただければ幸いです。
makefile - ソースコードからインストールすると、Ubuntu 12.04 で ming 0.4.2 コンパイルエラーが発生する
ソースコードから ming 0.4.2 をインストールしようとしていますが、以前は Ubuntu 10.04でコンパイルできましたが、コマンドを使用してインストールしようとすると、次のコンパイルエラーが発生しますsudo make install
(libpng
既にインストールされています)。
c++ - _BitScanForward64はc++。exe(rubenvb-4.7.2-release)で間違った答えを返します
長年のMSVCユーザーで、gccは初めてです(我慢してください)。
Windows7でrubenvbバージョンのc++(件名のバージョンを参照、はい、64ビット用にビルドしています)を使用していますが、_BitScanForward64の使用に問題があります。いくつかのサンプルコードは次のようになります。
私はコンパイルしています:
"C:\ Program Files \ gcc2 \ mingw64 \ bin \c++。exe"-oiTot.exe -mno-ms-bitfields -march = native -momit-leaf-frame-pointer -mwin32 -Os -fomit-frame-pointer -m64 -msse4 -mpopcnt -D WINDOWS main.cpp
パラメータ8を使用してiTot.exeを実行すると、_BitScanForward64によってixが3に設定されると予想しました。これがMSVCの機能です。ただし、ixは0で、ix2は1です。
また、アセンブラを見ると、次のようになります。
このような状況で、gccがメモリの書き込みと読み取りを強制するのはなぜですか?
だから、いくつかの質問:
- _BitScanForward64はどういうわけかgccの下で異なって呼び出されることになっていますか?私がそれを間違っていると言っているのであれば、それを知っておくとよいでしょう(ただし、MSVCとの非互換性は苦痛です)。
- _BitScanForward64組み込みがメモリ書き込みを強制するのはなぜですか?
-Sからのアセンブラー出力を見つめていると、生成されているコードに何の問題も見られませんでした。ただし、objdump.exe -d -Mintelを使用すると、上記のasmコードを使用するのではなく(動作するように見えます)、実際には逆の結果が得られたことがわかります。
bsf rax、QWORD PTR [rsp + 0x2c]
WTF?-Sが私に嘘をついているのはなぜですか?
私が言ったように、私はgccを初めて使用するので、何か馬鹿げたことをしているだけなら、私に優しくしてください。ありがとう。