0
に最新取得する方法:私はエラーを取得していますこのモデルではDjangoのモデル
class Rank(models.Model):
User = models.ForeignKey(User)
Rank = models.ForeignKey(RankStructure)
date_promoted = models.DateField()
def __str__(self):
return self.Rank.Name.order_by('promotion__date_promoted').latest()
:
Exception Value:
'str' object has no attribute 'order_by'
は、私はデフォルトとして最新のランクをしたいです。これはどのように設定するのですか?
ありがとうございました。
アップデート#1
追加ランク構造
class RankStructure(models.Model):
RankID = models.CharField(max_length=4)
SName = models.CharField(max_length=5)
Name = models.CharField(max_length=125)
LongName = models.CharField(max_length=512)
GENRE_CHOICES = (
('TOS', 'The Original Series'),
('TMP', 'The Motion Picture'),
('TNG', 'The Next Generation'),
('DS9', 'Deep Space Nine'),
('VOY', 'VOYAGER'),
('FUT', 'FUTURE'),
('KTM', 'KELVIN TIMELINE')
)
Genre = models.CharField(max_length=3, choices=GENRE_CHOICES)
SPECIALTY_OPTIONS = (
('CMD', 'Command'),
('OPS', 'Operations'),
('SCI', 'Science'),
('MED', 'Medical'),
('ENG', 'Engineering'),
('MAR', 'Marine'),
('FLT', 'Flight Officer'),
)
Specialty = models.CharField(max_length=25, choices=SPECIALTY_OPTIONS)
image = models.FileField(upload_to=image_upload_handler, blank=True)
これは、クラスのランクにランクによって参照Rank_structureです。 ユーザー外部キーは標準ユーザーテーブルに移動します。
最新の「ランク」はどういう意味ですか?あなたが提供した現在の構造はあなたにとって不可能です。 'Rank'オブジェクトには' RankStructure'が1つしかありませんが、 'RankStructure'には' Rank'sがたくさんあります。 –
okです。 RankStructureのテーブルとUserのテーブルがあります。彼らは多くのものがたくさんあるので、私はランクを作った。 Rankはdate_promotedを使用して有効な日付を追加します。だから、Userが与えられ、User.rankを呼び出すと、私は最新のRankを求めます。 – arcee123
UserとRankStructureモデルを追加してください –