ねえ、2 つの異なる URL (ドメインによって異なります) からアクセスできるモデルがあります。そして、ビューやテンプレートで問題なくこのように使用しています。
サイトマップを構築するとき、get_absolute_url は同じものを返すべきではないので、私は考えました: モデルをサブクラス化し、get_absolute_url メソッドをオーバーライドすることができます:
class FanpitConcert(BandtasticConcert):
def get_absolute_url(self):
return ('event_checkout',(),{'artist_slug':self.slug_name,
'year': self.get_date().year,
'month': self.get_date().month,
'day': self.get_date().day,
})
class Meta:
abstract = True
そして、このサブクラス化されたモデルをサイトマップ クラスに使用します
class ConcertsSiteMap(Sitemap):
def items(self):
return FanpitConcert.objects.all().filter(app='Fanpit')
しかし、/sitemap.xml django にアクセスすると、まだ元のモデルから get_absolute_url を呼び出しています
ここでジャンゴが行っている闇の魔法はありますか? または明らかな何かが欠けていますか?
アップデート
私はabstract = Trueの部分を削除しようとしましたが、クラス Meta: db_table = 'same_table_as_base_model' で行きました
しかし今、djangoは列が見つからないと不平を言っています。