我有幾乎相同的問題,除了我使用的日期字段與日間,月和年分別輸入一個選項輸入的小部件。 我用bootstrapui爲花式角度datepicker。 Symfony的表單文章是一個多行數組,類似於: form_name [field_name] [day],form_name [field_name] [month],form_name [field_name] [year]其中表單名稱來自類型的getName函數。 基本上你需要的角度的轉換日期格式:
//java script
var expiration = $filter('date')($scope.datePicker, 'yyyy/M/d').split('/');
$scope.data['form_name[expiration][month]'] = expiration[1];
$scope.data['form_name[expiration][day]'] = expiration[2];
$scope.data['form_name[expiration][year]'] = expiration[0];
//form type
public function buildForm(FormBuilderInterface $builder, array $options) {
parent::buildForm($builder, $options);
$builder
->add('expiration', 'date')
->add('save','submit');
}
public function getName() {
return 'form_name';
}
在JavaScript $ scope.datePicker是綁定在摘取了NG-模型(存儲Date對象的角度將創建)和$過濾器是角服務注入到控制器。然後,你可以將它張貼:
$http.post($scope.formUrl, $.param($scope.data), {headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}})
.then(function (response) {
//called async if form is valid
}, function (response) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});
嘗試設置ISO8601格式手動:http://symfony.com/doc/current/reference/forms/types/date.html#reference-forms-類型日期格式。並注意,該文檔稱它是'single_text',而不是'singletext'。 – kozlice