我从未做过任何 JavaScript,但我发现这就是我正在寻找的用于显示我的 html 模板之一的动态表的内容。 我读到应该有一些使用 JQuery 的东西,但仅此而已。 因此,我正在寻找一个动态表的示例,该示例能够按照选择的列对行进行排序,用 javascript 编写,显示在 HTML 模板中,使用: - as columns:MySQL 表的字段(参见下面的示例)。 - 作为行:同一表中包含的条目 而这一切都必须使用Django(我不知道javascript文件是否必须与HTML模板分开或者必须位于HTML模板中)
MySQL 表示例:
CREATE TABLE PDB(
id_PDB_chain CHAR(5) NOT NULL PRIMARY KEY,
id_PDB CHAR(4) NOT NULL,
chaine VARCHAR(10) NOT NULL,
header VARCHAR(255) NOT NULL,
sequence_Proteine TEXT NOT NULL,
start_seq INT NOT NULL,
taille_Proteine INT NOT NULL,
resolution_PDB FLOAT NOT NULL,
meth_Res VARCHAR(10) NOT NULL,
FOREIGN KEY (meth_Res)
REFERENCES methodes_res(meth_Res)
ON DELETE CASCADE
);
models.py文件中对应的类:
from __future__ import unicode_literals
from django.db import models
class Pdb(models.Model):
id_pdb_chain = models.CharField(db_column='id_PDB_chain', primary_key=True, max_length=5) # Field name made lowercase.
id_pdb = models.CharField(db_column='id_PDB', max_length=4) # Field name made lowercase.
chaine = models.CharField(max_length=10)
header = models.CharField(max_length=255)
sequence_proteine = models.TextField(db_column='sequence_Proteine') # Field name made lowercase.
start_seq = models.IntegerField()
taille_proteine = models.IntegerField(db_column='taille_Proteine') # Field name made lowercase.
resolution_pdb = models.FloatField(db_column='resolution_PDB') # Field name made lowercase.
meth_res = models.ForeignKey('MethodesRes', models.DO_NOTHING, db_column='meth_Res') # Field name made lowercase.
def __unicode__(self):
return self.id_pdb
class Meta:
managed = False
db_table = 'PDB'
如果您需要任何其他信息,请在评论中询问,我将使用这些信息编辑这篇文章。
最佳答案
在你的views.py中以你想要的任何名称创建一个 View 。创建一个列表并将其设置为您想要从特定模型中获得的任何数据。现在转到您的模板。使用从数据库中选择的特定数据填充该列表后,使用 If 语句检查该列表中是否存在任何内容。如果那里有数据,那么您可以使用 For 循环,如下所示:
{% for model_name in list_name %}
model_name.model_data etc # Mark it up with relevant html table code, though divs are more preferred
您可以根据需要标记数据以显示表格,尽管 div 比表格更兼容且更好。这只是一个基本示例。在Else语句中,如果列表中提前不存在数据,则可以简单地输出不存在数据。看看这里https://docs.djangoproject.com/en/1.10/intro/tutorial01/ 他们引导您构建一个投票应用程序,与您相关的是他们构建的 index.html 模板,该模板从数据库中提取问题数据,并在主页上显示无序的问题列表作为投票链接。只需按照本教程进行操作,看看他们如何实现 models.py 和views.py 以及模板,然后将标记从无序列表更改为适合您需要的任何内容。
关于javascript - Django Python - Javascript 动态表对行进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43257571/