Bir sorun buluyorum handlebars
input
verileri ayarlayın. Ne tür bir veri olursa olsun, son bir dizgedir. boolean
veya date
kullanırsam, bir sorun olacaktır.Ember verisinin DS.attr ('boolean') kullandığımda, html giriş verilerinin her zaman dize gönderilmesini sağlamanın en iyi yolu nedir?
import DS from 'ember-data';
export default DS.Model.extend({
...
sex: DS.attr('boolean'),
createdAt: DS.attr('date'),
updatedAt: DS.attr('date')
});
Cinsiyeti değiştirmek için select
kullanıyorum. http://balinterdi.com/2015/08/29/how-to-do-a-select-dropdown-in-ember-20.html
<select onchange={{action (mut model.sex) value="model.sex"}}>
{{#each sexGroup as |sexChoice|}}
<option value={{sexChoice.value}} selected={{eq model.sex sexChoice.value}}>{{sexChoice.name}}</option>
{{/each}}
</select>
Ve denetleyicisi sexGroup ayarlayın:
sexGroup: [
Ember.Object.create({value: 1, name: "man"}),
Ember.Object.create({value: 0, name: "woman"})
]
sorundur benim seçme tercihi erkek ya da kadın, Ember veriler her zaman sunucuya gerçek gönderecek neyse. Html select değeri her zaman dize olduğu için ve Ember Data attr('boolean')
dize true
olur.
ben bu sorunu çözmek istiyorsunuz, iki yönlü vardır: (usr string
, boolean
kullanmamak)
No.1;
this.get('model').set('sex', parseInt(this.get('sexValue')));
date
biçimi de sorun var: What is the best way to modify the date format when ember-data does serialization?
Yani Kor verilerinin rolünü bilmiyormuşum gibi
No.2 bak, (Kullanım parseInt
Kaydet önce değerini ayarlamak için) boolean
ve date
öznitelik türleri. Özellikle html girişinin kullanımı ve değeri her zaman dize.
Bu duruma iyi bir çözüm var mı? Yoksa sadece bir ip kullanıyor muyum? Teşekkürler. Bunun yerine get
ve set
ile hesaplanan özelliği kullanmak model.sex
kullanmanın
Kor veri [DS.Transform] teklif (http://emberjs.com/api/data/classes/DS.Transform .html) sınıfı ve size yardımcı olabilecek 'serialize()' ve 'deserialize() yöntemleri. Kendi dönüştürme nesnesini uygulayın, "custom-sex" ve model özelliğinizi şu türde yapın: 'sex: DS.attr ('custom-sex'),' Her zaman istek yanıtı alınacak/gönderilecek, serialize()/deserialize() 'yöntemleriniz çalışır. – Pavol
@Pavol Teşekkürler. Bu sınıfı biliyorum. Ama eğer 'string' kullanırsam bu problemi çözebilirim, neden özel dönüşüm yapmalıyım? – JeskTop