class Series(models.Model):
name = models.CharField()
...
class Episode(models.Model):
series = models.ForeignKey('Series')
num = models.IntegerField()
####List of episodes
episodes = [str(a[0]) for a in Episode.objects.filter().values_list('name')]
#sorting of episoded
sorted_episodes = sorted(episodes, key=lambda x:x.split(' ')[-1] in episodes)
print sorted_episodes
可能最好将第几集存储为一个整型字段并按其排序。你知道吗
数据库架构结构错误。你知道吗
Django ORM查询最终被转换为SQL。您不能直接在任何db列中进行这种排序。你知道吗
至少,你应该把连续剧的名字和集号分开。你知道吗
剧集将按其系列名称按字母顺序排列,然后按剧集编号按数字顺序排列。你知道吗
以我的经验,在大多数情况下,即使上面的结构也不够好。插曲名称实际上是系列名称,它应该被分隔到另一个表中。我将创建如下模型:
如果插曲名称在插曲名称和插曲编号之间有空格作为分隔符,则可以执行以下过程。 您的架构设计错误。
但如果你想继续下去,我会告诉你路。根据编码,性能基础可能不是很好的解决方案,但仍能满足您的要求。
请看下面的代码。你知道吗
相关问题 更多 >
编程相关推荐