Javascript Backbone.js collection.create函数不';t返回更新模型并等待:true
在将Backbone.js与Laravel 4一起使用时,我使用带有wait:true选项的this.collection.create()插入数据库。它可以插入数据库,但如果设置了wait:true,它不会更新模型。因此,如果我再次尝试输出集合,它不会被更新,即使尝试一个成功回调函数返回一个值,POST请求返回正数 该应用程序是一个联系人管理系统。 这是我的联系人模型:Javascript Backbone.js collection.create函数不';t返回更新模型并等待:true,javascript,backbone.js,laravel-4,Javascript,Backbone.js,Laravel 4,在将Backbone.js与Laravel 4一起使用时,我使用带有wait:true选项的this.collection.create()插入数据库。它可以插入数据库,但如果设置了wait:true,它不会更新模型。因此,如果我再次尝试输出集合,它不会被更新,即使尝试一个成功回调函数返回一个值,POST请求返回正数 该应用程序是一个联系人管理系统。 这是我的联系人模型: App.Models.Contacts = Backbone.Model.extend({ }); 这是我对添加联系人的
App.Models.Contacts = Backbone.Model.extend({
});
这是我对添加联系人的看法
App.Views.AddContact = Backbone.View.extend({
el: '#addContact',
events: {
'submit': 'addContact',
},
initialize: function() { // cache values
this.first_name = $('#first_name');
this.last_name = $('#last_name');
this.email_address = $('#email_address');
this.description = $('#description');
},
addContact: function(e) {
e.preventDefault();
this.collection = this.collection.create({
first_name: this.first_name.val(),
last_name: this.last_name.val(),
email_address: this.email_address.val(),
description: this.description.val(),
}, { wait: true });
},
});
以下是收藏:
App.Collections.Contacts = Backbone.Collection.extend({
model: App.Models.Contacts,
url: '/projects/gamesapp/public/contacts',
});
这是页面上的脚本,它将所有这些付诸实施:
<script>
new App.Router;
Backbone.history.start();
App.contacts = new App.Collections.Contacts;
App.contacts.fetch().then(function() {
new App.Views.App({ collection: App.contacts });
});
</script>
新应用程序。路由器;
Backbone.history.start();
App.contacts=新App.Collections.contacts;
App.contacts.fetch().then(函数()){
新建App.Views.App({collection:App.contacts});
});
我该怎么做才能让它工作?我想在视图中创建,以便在本地更新模型,但它似乎没有这样做
谢谢 问题不在js或主干代码中,而是在我编写的Laravel代码中 帖子似乎返回了肯定的响应,但问题出在我控制器的store方法中,您必须从store()函数返回create()函数,为了清楚起见:
public function store()
{
$input = Input::all();
return Contact::create(array( // YOU HAVE TO RETURN SOMETHING
'first_name' => $input['first_name'],
'last_name' => $input['last_name'],
'email_address' => $input['email_address'],
'description' => $input['description'],
));
}
我的问题出现了,因为我没有返回它,只是调用Contact::create()函数。。。(触点为Laravel模型)