我正在使用Angular JS作为前端,Laravel作为后端。
我有一个主数据表视图列表以及删除和编辑选项。
<a class="resedit btn btn-sm btn-default" href="{{URL::route('edit_repair_category',[[category.id]])}}/"><i class="icon-note"></i></a>
<a title="Delete" ng-click="deleteRow($event,category.id,'{{URL::route('delete_repair_category')}}',currentPage)" class=" btn btn-sm btn-delete"><i class="glyphicon glyphicon-trash"></i></a>
上面我正在使用Laravel URL Generator生成Edit页面的URL,但我想传递主数据的ID以从控制器获取数据。
我使用[[]]进行Angular JS绑定。
URL::route('edit_repair_category',[[category.id]])
现在我得到了例外使用未定义的常量类别 - 假设'类别'
路线。
Route::get('edit-repair-category/{id}', ['as' => 'edit_repair_category', 'uses' => 'RepairCategoryController@editRepairCategory']);
有可能吗?
答案 0 :(得分:1)
您收到此错误的原因是因为您正在混合javascript
和PHP
。
您的代码的PHP
部分将在服务器上处理,然后传递到将要处理javascript
的浏览器,因此PHP
我担心你试图使用常数。
由于category.id
只是在网址的末尾,您应该可以执行以下操作:
<a class="resedit btn btn-sm btn-default" href="{{ URL::route('edit_repair_category', null) }}/@{{category.id}}"><i class="icon-note"></i></a>
此处使用 null
来防止抛出错误。
@
之前的{{category.id}}
只是告诉刀片将其视为普通字符串而不对其执行任何操作(@
符号将被刀片删除。)
希望这有帮助!