Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:从db列查询干净的字符串值或清除视图/模板上的字符串是否更快?_Python_Mysql_Django - Fatal编程技术网

Python:从db列查询干净的字符串值或清除视图/模板上的字符串是否更快?

Python:从db列查询干净的字符串值或清除视图/模板上的字符串是否更快?,python,mysql,django,Python,Mysql,Django,我有一个城市模型和夹具数据,其中包含城市列表,目前正在对视图和模板上的URL进行清理,然后再加载它们。所以我在下面的模板中创建了一个URL,如下所示: 实际的城市名称是New city 如果我将已经清理过的数据newcity存储在MySQL db上的一个新列short_name中,并在模板和视图上使用city.short_name,会更好吗?这似乎非常注重观点。速度快吗?唯一确定的方法是测量。它的速度快到你关心的程度了吗?可能不会。在任何情况下,最好不要基于性能做出模式设计决策,除非您已经观察到

我有一个城市模型和夹具数据,其中包含城市列表,目前正在对视图和模板上的URL进行清理,然后再加载它们。所以我在下面的模板中创建了一个URL,如下所示:

实际的城市名称是New city


如果我将已经清理过的数据newcity存储在MySQL db上的一个新列short_name中,并在模板和视图上使用city.short_name,会更好吗?

这似乎非常注重观点。速度快吗?唯一确定的方法是测量。它的速度快到你关心的程度了吗?可能不会。在任何情况下,最好不要基于性能做出模式设计决策,除非您已经观察到了可测量的糟糕性能


在所有其他条件相同的情况下,通常最好将数据存储在不同的列中。将其加入控制器或模板代码要比将其拆分为多个部分更容易。

在MySQL数据库中存储短名称需要I/O。I/O总是很慢,对于如此简单的数据转换,应该更快地保留它,就像它一样,并避免对数据库进行I/O


如果你真的想知道两者的区别,请使用timeit,访问数据库的速度可能会慢得多。

这要看情况而定,如果你的列表中有固定数量的城市,只需对它们进行硬编码,除非你有很多城市实际上会给服务器的资源带来一些压力-但我不认为这里是这样,否则,你必须为城市使用某种类型的持久性存储,并且数据库会很方便。

如果你最终完成这一点,你应该考虑编写一个自定义标签。关于是否需要城市对象的附加信息。如果您已经准备好了所有需要转换的城市名称信息,那么仅为该任务访问您的数据库并不值得I/O。我在数据库中有大约900个城市,但它们都是固定的。
<a href="http://{{ city.name|lower|cut:" " }}.{{ SITE_URL}}">