我有一个简单的模型Expense
,其date, amount, description
。
我的问题是,当记录发送到服务器时,date
字段始终为 nil ,只有在我将其保留为默认值时才有效。
该模型具有日期的defualt值。呈现表单时,默认日期是预先填充的。如果提交此表单,则会发送该值。如果我单击输入字段(焦点),它将始终向服务器提交nil。
我做错了吗?
以下代码。对不起,如果它看起来像外星人,我正在使用coffeescript =)
收到参数
{"expense"=>{"amount"=>10, "date"=>nil, "description"=>"Hello I got an expense"}}
模型
Household.Expense = DS.Model.extend
amount: DS.attr('number')
date: DS.attr('date', { defaultValue: new Date})
...
查看
Household.ExpensesNewView = Ember.View.extend()
控制器
Household.ExpensesNewController = Ember.ObjectController.extend
create: ->
@transaction.commit()
init: ->
@transaction = @.get('store').transaction()
@set 'content', @transaction.createRecord(Household.Expense)
save: ->
@transaction.commit()
this.transaction = null
transitionAfterSave: (->
if @get('content.id')
@transitionToRoute("expenses")).observes('content.id')
使用如下所示的输入字段时:
<form {{action save on="submit"}} class="form-horizontal">
{{view Ember.TextField valueBinding="date" id="date" placeholder="Date" required="true"}}
</form>
答案 0 :(得分:0)
@transaction.set('date', new Date(this.get('date')));