让我通过说我是AngularJS的新手& CodeIgniter。 试图创建一个单页的应用程序。在中心显示新闻报道。侧面是提交新故事的表单。我到了数据库中故事显示正常的地步。但是当我尝试从表单中创建新的故事时,它会将0输入到数据库中。我想我在模型中的功能有问题。而且这可能是没有正确编码的信息在MVC之间传递的基础。用CodeIgniter提交AngularJS表格
的index.php
<div class="span2" ng-controller="NewStoryCtrl">
<h4>New Story</h4>
<form name="newStory">
<label for="title">Title: </label>
<input type="text" name ="title" ng-model="news.title" required>
<label for="text">Text: </label>
<textarea type="text" name="text" ng-model="news.text"required></textarea>
<button ng-click="createNews()">Submit</button>
</form>
controller.js
function NewStoryCtrl($scope, $http) {
$scope.news = {title:$scope.title, text:$scope.text};
$scope.createNews = function(){
$http.post('/ci/index.php/news/create/',$scope.news);
};}
news.php(控制器)
public function create() {
$this->news_model->set_news();
}
news_model.php(模型)
public function set_news() {
$this->load->helper('url');
$slug = url_title($this->input->post('title'), 'dash', TRUE);
$data = array(
'title' => $this->input->post('title'),
'slug' => $slug,
'time' => time(),
'text' => $this->input->post('text')
);
return $this->db->insert('news', $data);
}
模型中的东西是我最初的CI新闻教程中剩下的。这就是为什么我认为错误在这里。 将controllers.js中的信息传递给模型的最佳方式是什么?
谢谢。我一直在使用Firebug。正在传递JSON文件。但我不熟悉收集或解码json。在控制器中,我该如何调用它?只是“新闻”?我以前编码过的东西。这对我来说更有意义,因为我已经有一个PHP变量。 – EnigmaRM 2013-03-12 22:24:00
找到了一个解决方案:'$ data = json_decode(file_get_contents('php:// input'),TRUE);' – EnigmaRM 2013-03-13 22:15:08