0
我用瓶/ Jinja2的渲染一個簡單的模型來表。一切都運行得很好,但如果我嘗試分類和屬性,它可以是無,我得到一個的Jinja2 /瓶:當列表中包含排序錯誤無的
TypeError: unorderable types: NoneType() < NoneType()
我實現__lt__
,__gt__
方法能夠我對象進行排序。
我的第一堂課是一個任務班。它具有Person類的外鍵。我想按人物類排序,但無是人的合法狀態。
模板片斷
{% for t in tasks | sort(attribute=sort_on) %}
models.py片段:
class Person(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(300),nullable=False)
username = db.Column(db.String(300),nullable=False,unique=True)
tasks = db.relationship('Task', backref='resource', lazy='dynamic')
def __lt__(self,other):
if other == None:
return True
return self.name.__lt__(other.name)
def __gt__(self,other):
if other == None:
return False
return self.name.__gt__(other.name)
class Task(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(300),nullable=False)
text = db.Column(db.Text)
prio = db.Column(db.Integer)
person_id = db.Column(db.Integer, db.ForeignKey('person.id'))
project_id = db.Column(db.Integer, db.ForeignKey('project.id'),nullable=False)
planned_days = db.Column(db.Integer)
done = db.Column(db.Integer)
state_id = db.Column(db.Integer, db.ForeignKey('state.id'),nullable=False)
issue = db.Column(db.String(100))
有誰知道我怎麼能解決這個問題?
當比較的東西'None'你應該檢查身份,而不是平等。 '如果其他是None:'。 – dirn
Thx爲小費 – tonka