使用' ng-repeat'从数据库显示Laravel 4.2提取的数据的最佳做法是什么? AJS

时间:2015-05-24 13:50:27

标签: angularjs laravel

我使用Laravel 4.2从数据库中获取数据,它返回一个JSON对象数组,然后将该数据传递给视图。但我无法使用Angular JS' ng-repeat指令。我该怎么办? Blade I使用[[]]注意事项,而Angular JS使用{{}}注意事项。 Laravel的控制器如下:

class CountryController extends BaseController {
        public function index()
            {
                return View::make('admin.country.show')
                    ->with('countries', Country::all());// returns array of JASON objects
            }

}

Laravle的观点如下:

            <table class="table table-bordered">
                <tr>
                    <th class="col-lg-2">Sr.No</th><th>Country</th>
                </tr>
                <!-- foreach($countries as $country) -->

                    <tr ng-repeat="country in $countries">
                        <td class="col-lg-2">{{country.id}}</td><td>{{country.country}}</td>
                    </tr>
                    <tr><td>{{query}}</td></tr>
                <!--endforeach -->
            </table>
            {{countries}}
            [[ $countries]]

{{countries}}的ajs不起作用,但[[$ countries]]有效!如何在AJS中访问$ country?

1 个答案:

答案 0 :(得分:1)

我不知道这是不是一个好的做法,但我找到的解决方案如下:

<table class="table table-bordered">
    <tr>
        <th class="col-lg-2">Sr.No</th><th>Country</th>
    </tr>
    <tr ng-repeat="country in $countries">
        <td class="col-lg-2">{{country.id}}</td><td>{{country.country}}</td>
    </tr>
</table>

而不是使用

<tr ng-repeat="country in $countries">

我用过

<?php echo("<tr ng-repeat='country in ". $countries. "'>"); ?>

渲染后变为

<tr class="ng-scope" ng-repeat="country in [{"id":1,"countries":"Pakistan"},{"id":2,"countries":"Saudi Arbia"}]">

你可以清楚地看到php返回了一个JSON对象数组,现在可以很容易地打印出来了。 请再次注意:我不知道这是最佳做法!我仍然想知道最佳做法。