symfony - 轻松管理:添加复选框或按钮以显示 listAction
问题描述
我是 Symfony 的新手(SF 3)/
我正在尝试在简单的管理面板 listAction 中放置一个复选框或一个按钮,以在列表中显示连接或断开连接的用户。我想要做的是:我加载我的用户列表,只有连接的用户,当我点击复选框“显示所有用户”时,重新加载所有用户的列表,断开连接和连接。
我不知道我是否必须重写 listAction() 以及如何重写,或者只是将 createListQueryBuilder 与 ajax 调用一起使用。
我已经在我的控制器中尝试过这个
protected function createListQueryBuilder($entityClass, $sortDirection, $sortField = null, $dqlFilter = null)
{
$response = parent::createListQueryBuilder($entityClass, 'ASC', 'name', $dqlFilter);
if ($this->request->query->get('connected') == 'all') {
$response->Where('entity.connected in (0, 1)');
} else {
$response->Where('entity.connected = 0 ');
}
return $response;
}
在我的树枝上:
<div class="row">
<div class="p-3 mb-2 bg-light text-dark">
<input type="checkbox" name="checkbox" id="connected">Display all users</b><br>
</div>
<div class="clearfix"></div>
{% block body_javascript %}
{% if 'list' == app.request.get('action') %}
<script type="text/javascript">
$(function(){
$('#connected').click(function(event) {
$.ajax({
type: "POST",
url: '/?entity=user&action=list&connected=all',
data: {
'connected': 'all',
},
success: function (data) {
alert('it worked');
},
error: function () {
alert('it broke');
},
complete: function () {
alert('it completed');
}
});
});
});
我有点迷路了,我哪儿也去不了。
你能指导我吗?
萨曼莎
解决方案
推荐阅读
- git - Gitlab合并本地分支
- javascript - Fetch API:请求完成后“await res.json()”会失败吗?
- python - Popen 的意外输出
- php - 未发送到 office365 邮件客户端的电子邮件
- javascript - 为什么在设置 JS 的功能时我的引导切换没有改变?
- php - 如何在 url 不变的情况下获取 Laravel 中的当前语言,
- java - vaadin 8 更改网址
- autocomplete - AMP自动完成如何从自动完成结果中获取ID并在输入中仅显示文本
- bootstrap-table - Bootstraptable CookiesEnabled 不起作用
- google-data-studio - 如何在 Datastudio 中的日期字段中减去一天