Django-hstore和admin小部件:解析hstore数据的方法

时间:2016-10-04 10:17:52

标签: python django django-admin hstore django-hstore

我使用Django-hstore库,并且有漂亮的管理小部件。主题表存储计算机的组件,如下所示:

__defineGetter__

接下来,我从cpu-world.com获取有关必要CPU的数据,并且我在admin中有以下内联数据:

enter image description here

看起来很棒,但按字母顺序排序而不是逻辑排序,按照class Component(models.Model): name = models.CharField(max_length=64) purchase_date = models.DateField(blank=True, null=True) product_page = models.URLField(blank=True, help_text='url to pruduct page') <...> data = hstore.DictionaryField(blank=True) def load_cpu_data(self): if self.product_page: info = cpu_data(self.product_page) if info: # info is a SortedDict with proper order for key, value in info.items(): self.data[key] = value self.save() 模型方法将数据加载到数据库中。正确顺序的示例,例如cpu-world:

load_cpu_data

是否有技术,技巧或其他东西来帮助我按照所需的顺序显示数据?例如,我发现了python OrderedDict数据类型,它与我需要的类似。但显然hstore内部结构混乱数据顺序。

1 个答案:

答案 0 :(得分:0)

根据the hstore docs, hstore itself is not ordered

  

对的顺序不重要(并且可能不会在输出上再现)。对之间或=&gt;周围的空白标志被忽略。双引号键和值,包括空格,逗号,= s或&gt; s。要在键或值中包含双引号或反斜杠,请使用反斜杠对其进行转义。