31
私はbackbone.jsを使用するために古いアプリケーションを移植しています(うまくいけば) システム内のさまざまなオブジェクトのどれもがidにidを使用していません - それぞれのオブジェクトは異なります。 Backbone.Modelを初期化するとき、私は以下の解決策を思いつきました。バックボーン - idに別のフィールド名を使用
initialize: function(){
this.idAttribute = 'user_ID';
this.set({'id':this.get('user_ID')});
}
しかし、私がバックボーンで開発するとき、私はこのアプローチが私を噛んでしまうと心配しています。 誰もこれについて何か経験がありますか? ポインタは非常に感謝します。
編集:モデルでisNew()を呼び出しただけで、idが1に設定されていてもtrueになりました。 //////////////////////// ///////////////////////
以下を使用すると、それを整理しているようです。
User = Backbone.Model.extend({
idAttribute : 'user_ID'
})
を定義するとき、それは通常使われている方法です。 – Chin
バックボーンプロジェクトのリレーショナルデータベーススキーマで "id"の代わりに "id_user"のようなid-suffixesを使用する必要がありますか?私はそれが[this](http://stackoverflow.com/a/1369773/2236166)に従ってそれらを使うほうが良いと確信しました、そして、私は "Doh、しかし、バックボーンモデルのidフィールド..."と思いました。このQ&Aを読んでください。ありがとう! –
少し分かりますが、元のid値が必要な場合は、.get( 'id')を使用しないでください。常に 'model.id'を使用してください。 – backdesk