djangoでobjectsとorder_byを使いDBをソート
解決したいこと
WEBアプリを制作しています。
今回登録されているデータを取り出すためobjectsを使おうと考えました。
データを昇順で並べ替えようとorder_byを使おうとしたのですが、ForeignKeyで繋げた別テーブルのカラムをorder_byの引数に入れようとしたところつまずいてしまいました。
models.py
class Review(models.Model):
owner = models.ForeignKey(User, on_delete=models.CASCADE, related_name='review_owner')
commentTitle = models.CharField(max_length=100)
comment = models.TextField()
movie_id = models.IntegerField()
star = models.DecimalField(default=0, max_digits=2, decimal_places=1)
datetime = models.DateTimeField(default=timezone.now)
class Goodbad(models.Model):
owner = models.ForeignKey(Review, on_delete=models.CASCADE, related_name='goodbad_owner')
good = models.IntegerField(null=True)
bad = models.IntegerField(null=True)
views.py
def search(request):
reviewDataOrg = Review.objects.order_by(?)
params = {
'reviewDataOrg': reviewDataOrg,
}
return render(request, 'movieist/search.html', params)
good評価が多い順にレビューを表示させたいのですが、
models.pyのGoodbadの中にあるgoodを使いデータを並び替えて、連携先であるmodels.pyのReviewの並べ替えを連動させる方法はありますでしょうか?
至らない点も多々あるかと思いますがよろしくお願いします。
0