我使用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?
答案 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对象数组,现在可以很容易地打印出来了。 请再次注意:我不知道这是最佳做法!我仍然想知道最佳做法。