【发布时间】:2019-02-04 21:15:10
【问题描述】:
我正在构建产品信息管理器 (PIM)。尝试使用 symfony 框架来构建它。我目前面临的问题。我正在使用下面的树枝文件示例的数据表显示我的产品信息。
{% set title = 'Product List' %}
{% extends 'table.twig' %}
{% block h1_page_header %} Product List {% endblock %}
{% block panel_heading %} Product List {% endblock %}
{% block thead %}
<tr>
<th>ID</th>
<th>Name</th>
<th>SKU</th>
<td>Actions</td>
</tr>
{% endblock %}
{% block tbody %}
{% for product in products %}
<tr>
<td>
{{ product.id }}
</td>
<td>
{{ product.name }}
</td>
<td>
SKU
</td>
<td>
<a href="{{ path('app_product_getproduct', {'id': product.id}) }}" class="btn btn-success btn-sm" >
<span class="glyphicon glyphicon-pencil"></span>
</a>
<a href="{{ path('app_product_delete', {'id': product.id}) }}" class="btn btn-danger btn-sm" onclick="return confirm('Are you sure?')">
<span class="glyphicon glyphicon-trash"></span>
</a>
</td>
</tr>
{% endfor %}
我现在的问题是我的数据库现在几乎有 60-70K。但是由于我想在数据表中显示的 70K 产品,我的产品/列表/页面没有呈现。它适用于少数 2-4k 产品,但在此之上它不会渲染。
我进行了一项研究,发现我可以解决服务器端处理的问题。但是我的问题是有更好的解决方案/替代方案来实现我的目标吗?
【问题讨论】:
-
使用 knp 分页器进行分页
-
对于较大的结果集,服务器端是最好的方法
-
从长远来看,服务器端是最好的,你会有越来越多的产品,增长的问题。一旦你用服务器端解决了它,你就再也不会遇到这个问题了。。跨度>
-
不确定你们对“处理服务器端”的建议是什么?
-
@DarkBee 可能是带有搜索等的服务器端分页
标签: php symfony datatables twig