将表格从AngularJS发送到Symfony

时间:2015-04-10 13:54:27

标签: angularjs symfony

我想将数据从Angular表单发送到Symfony控制器 将有关客户端的信息插入数据库。

这是我的标记:

<form ng-submit="submit()" ng-controller="Add" name="theForm">
    nom : <input name="nom" ng-model="nom"><br>
    prenon: <input name="prenom" ng-model="prenom"><br>
    Nom d'utilisateur <input name="username"ng-model="username"><br>
    <input type="submit" value="ajouter" name="ajouter" ><br>
</form>

这是我的控制器:

$scope.submit = function() {
    $http.post('/someplace', $scope.theForm);
}

但我不知道如何恢复Symfony控制器中的数据,然后将其插入数据库。如何使用我当前的设置来做到这一点?

2 个答案:

答案 0 :(得分:0)

您希望首先为Angular控制器定义Symfony服务以进行通信。这将是位置'/ someplace',您将在$ scope.theForm中发送数据。

http://symfony.com/doc/current/cookbook/controller/service.html

从表单开发此服务的连接后,您需要确保已配置和注册数据库连接。

http://symfony.com/doc/current/cookbook/configuration/pdo_session_storage.html

您提出的整体问题非常广泛,但希望这些情侣链接能让您从正确的方向开始。

答案 1 :(得分:0)

实际上你首先想要定义一个路由和一个控制器。 所以在你的routing.yml文件中添加类似

的路由
ajax_post_route_name:
    path:     /someplace
    defaults: { _controller: AcmeDemoBundle:Main:someplace }

在给定路径中创建实际控制器,并使用名称创建操作。在这个例子中,你应该创建一个这样的文件:

// src/AcmeDemoBundle/Controller/MainController.php
<?php

namespace AcmeDemoBundle/Controller;

use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Controller\Controllerș

class MainController extends Controller
{

    public function someplaceAction(Request $request)
    {
         //Your logic here
         $data = $request->all();
         $form = new Form();
         $form->bind($request);
         //... 
    }
}

也许这些链接更相关:

http://symfony.com/doc/current/book/routing.html

http://symfony.com/doc/current/book/controller.html