在admin中添加新对象时的Django-parler IntegrityError

时间:2018-11-23 12:23:58

标签: django django-parler

尝试保存新对象时出现此错误。试图问谷歌,没有什么帮助。我认为我的问题是产品和翻译表的ID不同,但是我不知道该如何解决。对不起,我的英语。

django == 1.10.7 django-parler == 1.8

  

异常类型:IntegrityError

     

异常值:
  在表“ pcart_catalog_product_translation”上插入或更新违反了外键约束“ pcart_catalog_pr_master_id_571a2ec0_fk_pcart_catalog_product_id”   详细信息:表“ pcart_catalog_product”中不存在键(master_id)=(a74f5571-512d-4bd5-9164-0388dd22bcd8)。

这是我的对象的一部分:

class Product(TranslatableModel):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    slug = models.SlugField(_('Slug'), max_length=255, unique=True)
    external_id = models.CharField(
    _('External ID'), default='', blank=True, max_length=255, db_index=True)

    translations = TranslatedFields(
       title=models.CharField(_('Title'), max_length=255),
       description=HTMLField(_('Description'), blank=True),
       page_title=models.CharField(_('Page title'), max_length=255, blank=True),
       meta_description=models.TextField(_('Meta description'), blank=True),
       meta_keywords=models.TextField(_('Meta keywords'), blank=True),
       meta_text=models.TextField(_('Meta text'), blank=True),
)

这是语言和解析器设置:

LANGUAGE_CODE = os.environ.get('LANGUAGE_CODE', 'uk')

LANGUAGES = [
     ('uk', 'Українська'),
]

USE_I18N = True
USE_L10N = True
USE_TZ = True

PARLER_LANGUAGES = {
    SITE_ID: (
        {'code': 'uk',},
),
    'default': {
        'fallbacks': ['uk'],
        'hide_untranslated': False,
    }
}

----------

问题检测。这是与我的产品有关的ProductImage类。在管理员中,当我第一次添加产品时。 ProductImage引发错误,试图在他的创作之前与产品建立联系。就像是由Django-parler引用翻译字段一样。

0 个答案:

没有答案