0

私は何が起こっているのかをすでに理解していると思うので、これは実際の質問として他の人にとってより参考になります。しかし、時間がかかったので、ここに記録します。

私のモデルの 1 つに、 という名前のフィールドがありますVAT。テンプレートでこのフィールドにバインドしようとしています:

{{view Ember.TextField valueBinding="VAT" id="VAT-id" placeholder="VAT" required="true"}}

しかし、これは機能していません。これは驚くべきことであり、理解するのに時間がかかりました。

いくつかの質問:

  • Emberこれはまたはの制限ember-dataですか? (かなember-data?)
  • 大文字のフィールド名は ember によってどのように変換されますか? ドキュメントには、 REST アダプターが下線付きの属性を変換する方法を説明するセクションがありますが、大文字のフィールドについては何もありません。
  • このフィールドを実名で参照するにはどうすればよいですか? (多分無理ですよね?)

私が知っている唯一の回避策は、次のことです。

App.Adapter.map('App.Company', {
    ...
    vat        : {key: 'VAT'},
});

テンプレートで実際の名前を使用することはまだ許可されていません。私はまだvat(小文字で)使用しなければなりません。ember-data?を使用して元の大文字のフィールド名を使用することは実際には不可能だと思います。

ノート

ああ、アダプターは完全に構成された後RESTに作成する必要があることを忘れないでください。そうしないと、構成は使用されません。これも多くの混乱の原因となっています。したがって、次のようにします。

App.Adapter = DS.RESTAdapter.extend({ ... });
App.Adapter.configure('plurals', { ... });
App.Adapter.map('App.Company', { ... });
... more adapter configuration

そして、あなたはできる:

App.Store = DS.Store.extend({
    revision: 13,
    adapter: App.Adapter.create(),
    ...
});

順序を逆にすると、Ember は何も言わなくなりますが、構成はアクティブになりません。

4

1 に答える 1

0

テンプレートで実際の名前を使用することはまだ許可されていません。私はまだ vat (小文字) を使用する必要があります。ember-dataを使用して元の大文字のフィールド名を使用することは本当に不可能だと思いますか?

ご想像のとおり、大文字のキー名がサポートされていないのは設計によるものです。別の方法でこれを構成する簡単な方法がないため、回避策はほぼ正しい方法です。

それが役に立てば幸い。

于 2013-08-22T11:08:40.673 に答える