title: AttributeError: type object 'Product' has no attribute '_parler_meta' - DJANGO
body: <p>When attempting to migrate my database in Django. I receive the following: </p>
  
  <p>Running migrations:</p>
  
  <pre><code>Applying shop.0002_transactions...Traceback (most recent call last):
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/parler/models.py", line 942, in contribute_translations
      base = shared_model._parler_meta
  AttributeError: type object 'Product' has no attribute '_parler_meta'
  
  During handling of the above exception, another exception occurred:
  
  Traceback (most recent call last):
    File "manage.py", line 15, in &lt;module&gt;
      execute_from_command_line(sys.argv)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
      utility.execute()
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute
      self.fetch_command(subcommand).run_from_argv(self.argv)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/base.py", line 328, in run_from_argv
      self.execute(*args, **cmd_options)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/base.py", line 369, in execute
      output = self.handle(*args, **options)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/base.py", line 83, in wrapped
      res = handle_func(*args, **kwargs)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/core/management/commands/migrate.py", line 233, in handle
      fake_initial=fake_initial,
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/executor.py", line 117, in migrate
      state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
      state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/executor.py", line 245, in apply_migration
      state = migration.apply(state, schema_editor)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/migration.py", line 114, in apply
      operation.state_forwards(self.app_label, project_state)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/operations/models.py", line 86, in state_forwards
      list(self.managers),
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 96, in add_model
      self.reload_model(app_label, model_name)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 157, in reload_model
      self._reload(related_models)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 190, in _reload
      self.apps.render_multiple(states_to_be_rendered)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 307, in render_multiple
      model.render(self)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 578, in render
      return type(self.name, bases, body)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/models/base.py", line 320, in __new__
      new_class._meta.apps.register_model(new_class._meta.app_label, new_class)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/migrations/state.py", line 338, in register_model
      self.do_pending_operations(model)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/apps/registry.py", line 424, in do_pending_operations
      function(model)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/apps/registry.py", line 403, in apply_next_model
      self.lazy_model_operation(next_function, *more_models)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/apps/registry.py", line 389, in lazy_model_operation
      function()
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/models/fields/related.py", line 317, in resolve_related_class
      field.do_related_class(related, model)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/django/db/models/fields/related.py", line 388, in do_related_class
      self.contribute_to_related_class(other, self.remote_field)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/parler/fields.py", line 58, in contribute_to_related_class
      self.model.contribute_translations(cls)
    File "/Users/itsd/Desktop/Web Projects/Django Projects/e-commerce_shop/env/myshop/lib/python3.7/site-packages/parler/models.py", line 944, in contribute_translations
      raise TypeError("Translatable model {} does not appear to inherit from TranslatableModel".format(shared_model))
  TypeError: Translatable model &lt;class '__fake__.Product'&gt; does not appear to inherit from TranslatableModel
  </code></pre>
  
  <p>I do not understand what the issue is preventing me from migrating the database. </p>
  
  <p>Any help is appreciated. </p>
  
  <pre><code>My models.py file 
  
  from django.db import models
  from django.urls import reverse
  from parler.models import TranslatableModel, TranslatedFields
  
  
  class Category(TranslatableModel):
  translations = TranslatedFields(
          name = models.CharField(max_length=200, db_index=True),
          slug = models.SlugField(max_length=200, db_index=True, 
  unique=True)
      )
  
  class Meta:
      # ordering = ('name',)
      verbose_name = 'category'
      verbose_name_plural = 'categories'
  
  def __str__(self):
      return self.name
  
  def get_absolute_url(self):
          return reverse('shop:product_list_by_category', args=[self.slug])
  
  
  class Product(TranslatableModel):
  translations = TranslatedFields(name = models.CharField(max_length=200, 
  db_index=True), slug = models.SlugField(max_length=200, db_index=True), 
  description = models.TextField(blank=True))
  category = models.ForeignKey(Category, related_name='products', 
  on_delete=models.CASCADE)
  image = models.ImageField(upload_to='products/%Y/%m/%d', blank=True)
  
  price = models.DecimalField(max_digits=10, decimal_places=2)
  available = models.BooleanField(default=True)
  created = models.DateTimeField(auto_now_add=True)
  updated = models.DateTimeField(auto_now=True)
  
  def __str__(self):
      return self.name
  
  def get_absolute_url(self):
          return reverse('shop:product_detail', args=[self.id, self.slug])
  </code></pre>
  
  <p>I do not understand what the issue may be. Here is my admin.py also. I believe the disconnect is between these two files after I make migrations and attempt to migrate. </p>
  
  <pre><code>from django.contrib import admin
  from .models import Category, Product
  from parler.admin import TranslatableAdmin
  
  
  @admin.register(Category)
  class CategoryAdmin(TranslatableAdmin):
  list_display = ['name', 'slug']
  
  def get_prepopulated_fields(self, request, obj=None):
          return {'slug': ('name',)}
  
  
  @admin.register(Product)
  class ProductAdmin(TranslatableAdmin):
      list_display = ['name', 'slug', 'price', 'available', 'created', 
  'updated']
  list_filter = ['available', 'created', 'updated']
  list_editable = ['price', 'available']
  
  def get_prepopulated_fields(self, request, obj=None):
          return {'slug': ('name',)}
  </code></pre>