preg_replace():在laravel和angular中

时间:2014-12-10 07:08:20

标签: json angularjs laravel

在角度中使用$ http服务,通过restful api从数据库中获取数据。数据被输入到下拉列表中,但是当数据稍后发布时,我得到“preg_replace():参数不匹配,模式是字符串,而替换是数组”错误。

这是代码片段。

这是服务

//this is the service in the controller




$http.get('/api/payment')
        .then(function(res){
           
            $scope.payment = res.data;
            
  
  //this post the data to the database
  
   save : function(payment_post) {
            return $http({
                method: 'POST',
                url: '/api/payment',
                headers: { 'Content-Type' : 'application/x-www-form-urlencoded' },
                data: $.param(payment_post)
            });
        },
<div class="form-group">
            <label>payment mode </label>

            <select class="form-control input-lg" ng-model="payment_post.name" ng-options="payment.name for payment in payment"></select>

            </div>

$ http.get( '/ API /支付')         。然后(函数(RES){

        $scope.payment = res.data;
        });

提前谢谢

已设法确定面临的问题。 Angular正在根据需要传递数据,但是laravel没有保存它,并且最大的问题在于控制器在数据被假设存储的方法中。

//这是方法

        public function store()
    {
     //test if data is passed to laravel from angular js.
/*
if (Input::has('name'))
        {
            return 'hello';
        }
*/
 $agent = new Agent();
 $agent->fname = Input::get('fname');
 $agent->lname = Input::get('lname');
 $agent->mname = Input::get('mname');
 $agent->id_number = Input::get('id_number');
 $agent->name = Input::get('name');
 $agent->gender = Input::get('gender');
 $agent->username = Input::get('username');
 $agent->save();
   // $agent->push();
}

//这是模型

    <?php
class Agent extends \Eloquent {
protected $table = "agent";
protected $fillable = [
  "id",
  "fname",
  "mname",
  "lname",
  "username",
  "id_number",
  "name",
  "gender",
  "created_at",
  "updated_at"
 ];
}

我知道我必须遗漏一些东西,任何人都可以为我指出。

1 个答案:

答案 0 :(得分:0)

我已经解决了它,在完成了angularjs文档后彻底打开了我的想法,提供给下拉的数据是json格式,而不是作为一个数组,因为我认为这是laravel为什么不能处理的方式传递给它的数据被保存。 angular对ng-options指令有不同的处理方法。

这是选择的方式。

  <select
  ng-model="payment_post.name"
  ng-options="value.name as value.name group by value.middle_name for value in payments">
     </select>