0
私は簡単なキーワードグループ化ツールを開発中です。DjangoグループFK byフィールド
フレーズは、検索エンジンでキーワードを表します。 SerpEntryはサイトのリンクを表します。
私はSerpEntryのURLでグループ化する方法を探しています。
ここでは私のモデルは以下のとおりです。
class Phrase(models.Model):
text = models.CharField(max_length=1000, unique=True)
class SerpEntry(models.Model):
phrase = models.ForeignKey(Phrase, related_name='serp_entry')
position = models.PositiveIntegerField()
url = models.TextField(max_length=2000)
title = models.CharField(max_length=1000)
snippet = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
は、あなたがそれを行う方法上の任意の提案を持っていますか?私が達成したい結果の
例:あなたは、各エントリのオブジェクトへのフレーズのリストを添付したクエリを書くことができます
urls = [
'url1': [phrase1,phrase2,phrase3],
'url2': [phrase2,phrase4,phrase5],
]
のようなものではなく、唯一の[ '' ManyToMany''](https://docs.djangoproject.com/en/1.9/topics/db/examples/many_to_many/)関係を使用する方が良いと思いませんか'' ForeignKey''? 1つのURLは複数のフレーズを持つことができるため、意味があります。 – Flaiming
SerpEntryは、URLがさまざまな位置にあり、時間の経過とともにその位置が変わるため、各フレーズでユニークです。SerpEntryのスニペットを追加しました。しかし、あなたがManyToManyでグループ化の解決策を持っているなら、あなたは歓迎です:) –