I'm working on Symfony2 project and I'm using also AngularJS. So I'm using 
Symfony2 Forms to build forms and this is how my form code looks:

    public function buildForm(FormBuilderInterface $builder, array 
$options) {
        $builder
                ->add('country', 'entity', array(
                    "class" => "CommonBundle:Country",
                    "property" => "name",
                    "label" => "País",
                    "empty_value" => "Seleccione un país",
                    "attr" => array(
                        "ng-model" => "country",
                        "tooltip" => "País",
                        "tooltip-trigger" => "focus",
                        "tooltip-placement" => "right",
                        "wv-def" => "País",
                        "wv-cur" => "",
                        "wv-err" => "Error!",
                        "wv-req" => "The value you selected is not a valid 
choice",
                        "type" => "text"
                    )
                ))
                ->add('state', 'entity', array(
                    "class" => "CommonBundle:State",
                    "property" => "name",
                    "label" => "Estado",
                    "empty_value" => "Seleccione un estado",
                    "attr" => array(
                        "ng-model" => "state",
                        "ng-disabled" => "!states",
                        "ng-options" => "state.name for state in 
states.entities",
                        "tooltip" => "Estado",
                        "tooltip-trigger" => "focus",
                        "tooltip-placement" => "right",
                        "wv-def" => "Estado",
                        "wv-cur" => "",
                        "wv-err" => "Error!",
                        "wv-req" => "The value you selected is not a valid 
choice",
                        "type" => "text"
                    )
                ))
                ->add('city', 'entity', array(
                    "class" => "CommonBundle:City",
                    "property" => "name",
                    "label" => "Ciudad",
                    "empty_value" => "Seleccione una ciudad",
                    "attr" => array(
                        "ng-model" => "city",
                        "ng-disabled" => "!cities",
                        "ng-options" => "city.name for city in 
cities.entities",
                        "tooltip" => "Ciudad",
                        "tooltip-trigger" => "focus",
                        "tooltip-placement" => "right",
                        "wv-def" => "Ciudad",
                        "wv-cur" => "",
                        "wv-err" => "Error!",
                        "wv-req" => "The value you selected is not a valid 
choice",
                        "type" => "text"
                    )
        ));
    }

This is the basically `Country > State > City` dependency. I have this code 
in my AngularJS controller:

    app.controller('NewSeller', function($scope, $http, $routeParams, 
$fileUploader) {
    
        $scope.section = $routeParams.section == undefined ? 'main' : 
$routeParams.section;
        $scope.aaaa = 'sdsdsdsd';
        $scope.country = '';
    
        // Add watch for states
        $scope.$watch('country', function(iso_country) {
            if (iso_country) {
                $http.get(Routing.generate('states') + 
iso_country).success(function(data) {
                    if (data.message) {
                        $scope.message = data.message;
                    } else {
                        $scope.states = data;
                        $scope.orderProp = 'name';
                    }
                }).error(function(data, status, headers, config) {
                    if (status == '500') {
                        $scope.message = "No hay conexión con el servidor.";
                    }
                });
            }
        });
    
        ...

And this is the HTML generated:

<select id="common_commonbundle_standard_address_country" 
name="common_commonbundle_standard_address[country]" required="required" 
ng-model="country" tooltip="País" tooltip-trigger="focus" 
tooltip-placement="right" wv-def="País" wv-cur="" wv-err="Error!" 
wv-req="The value you selected is not a valid choice" type="text" 
class="ng-scope ng-dirty ng-valid ng-valid-required">
<option value="" selected="selected">Seleccione un país</option>
<option value="1">Pais 1</option>
<option value="2">Pais 2</option>
<option value="3">Pais 3</option>
<option value="4">Pais 4</option>
</select>

But it's not working since I change the select element and nothing happen. 
I want to watch this change to then get the states for that country. Any 
advice or help?

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to