1

Rails 4 で Mongoid 4.0.0 を使用しています。私のモデルは別のアプリケーションでテーブルをマップしていますが、フィールド名を制御できません。

モデルの 1 つに という名前のフィールドがあり、idMongo のフィールドに強制されてい_idます。たとえば、次のid値を"something"持つドキュメントを挿入すると、

{_id:"something", id:null}

それ以外の

{_id:ObjectId("<hexstring>"),id:"something"}

この強制を回避し、Mongoid が 2 つのフィールドを混同しないようにし、私のidフィールドをそのままにしておく方法はありますか?

私が言ったように、idフィールドの名前を変更することはオプションではありません。

ありがとう!

[編集済み] これは明らかに MongoDB の問題ではありません。それはモペットまたは(私の推測では)モンゴイドでなければなりません。

paramsキーを から:idに変更しようとしました:_ridが、これはまだ発生しています。エイリアスをチェックアウトするつもりですが、最初のパスから、それらが役立つとは思いません。それらは間違った方向に進んでいるようです。

4

1 に答える 1

0

これはハードコードされているようMoingoidで、全体に広まっている仮定です。ただし、ユーザーがモデルごとにキー フィールドを上書きできるようにするパッチを思い付くかもしれないほど面倒です。

しかたがない。

于 2015-02-13T17:47:10.923 に答える