Hvad を使用して翻訳可能なモデルを作成していますが、モデルを取得しようとするとエラーが発生します。
次のような 2 つのモデル クラスがあります。
class Boy(TranslatableModel):
age = models.PositiveSmallIntegerField()
toy = models.ForeignKey(Toy)
translations = TranslatedFields(
name = models.CharField(max_length=60),
)
class Toy(TranslatableModel):
price = models.PositiveSmallIntegerField()
translations = TranslatedFields(
model_name = models.CharField(max_length=60),
)
私は次のようなクエリを作成しようとしています:
Boy = Boy.objects.language('en').filter(name="john", toy__model_name="car")
次のエラーが表示されます: 翻訳されていないモデルから「model_name」などの翻訳されたフィールドにアクセスするには、翻訳対応マネージャーを使用する必要があります。翻訳不可能なモデルの場合は、hvad.utils.get_translation_aware_manager を使用して取得できます。翻訳可能なモデルの場合、language() メソッドを使用します。
以下は完璧に機能します:
Boy = Boy.objects.language('en').filter(name="john")
// toy__model_name="car" // を追加するとエラーになります。
私は何を間違っていますか?私が望むものを達成する方法は何ですか?