Skip to content
Snippets Groups Projects
Commit f0cd0538 authored by Martin Burchell's avatar Martin Burchell
Browse files

Renamed Tab model class to be consistent

As Dashboard has WidgetInstance objects, TabbedPage has TabInstance
parent 5f7a654b
No related branches found
No related tags found
2 merge requests!23Tabbed view header styling,!19Tab registry
from django.contrib import admin
from .models import TabbedPage, Tab
from .models import TabbedPage, TabInstance
class TabInline(admin.StackedInline):
model = Tab
model = TabInstance
extra = 0
......
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import jsonfield.fields
class Migration(migrations.Migration):
dependencies = [
('tabbed_page', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='TabInstance',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('settings', jsonfield.fields.JSONField(blank=True)),
('view_name', models.CharField(max_length=128)),
('name', models.CharField(max_length=128)),
('default', models.BooleanField(default=False)),
('position', models.PositiveIntegerField(default=0)),
('label', models.CharField(max_length=128)),
('page', models.ForeignKey(to='tabbed_page.TabbedPage')),
],
),
migrations.AlterUniqueTogether(
name='tab',
unique_together=set([]),
),
migrations.RemoveField(
model_name='tab',
name='page',
),
migrations.DeleteModel(
name='Tab',
),
migrations.AlterUniqueTogether(
name='tabinstance',
unique_together=set([('name', 'page')]),
),
]
......@@ -12,10 +12,10 @@ class TabbedPage(models.Model):
return self.name
class Tab(models.Model):
class TabInstance(models.Model):
settings = JSONField(blank=True)
view_name = models.CharField(max_length=128)
page = models.ForeignKey(TabbedPage)
page = models.ForeignKey(TabbedPage, related_name='tabs')
name = models.CharField(max_length=128)
default = models.BooleanField(default=False)
position = models.PositiveIntegerField(default=0)
......
from factory.django import DjangoModelFactory
from factory import fuzzy
from ..models import TabbedPage, Tab
from ..models import TabbedPage, TabInstance
class TabbedPageFactory(DjangoModelFactory):
......@@ -11,9 +11,9 @@ class TabbedPageFactory(DjangoModelFactory):
name = fuzzy.FuzzyText()
class TabFactory(DjangoModelFactory):
class TabInstanceFactory(DjangoModelFactory):
class Meta:
model = Tab
model = TabInstance
name = fuzzy.FuzzyText()
label = fuzzy.FuzzyText()
......@@ -3,7 +3,7 @@ import pytest
from ..views import TabbedPageView
from .factories import TabbedPageFactory, TabFactory
from .factories import TabbedPageFactory, TabInstanceFactory
@pytest.mark.django_db
......@@ -42,9 +42,9 @@ def test_name_defaults_to_main_when_empty():
@pytest.mark.django_db
def test_widgets_stored_on_view_in_position_order():
page = TabbedPageFactory()
tab3 = TabFactory(page=page, position=3)
tab1 = TabFactory(page=page, position=1)
tab2 = TabFactory(page=page, position=2)
tab3 = TabInstanceFactory(page=page, position=3)
tab1 = TabInstanceFactory(page=page, position=1)
tab2 = TabInstanceFactory(page=page, position=2)
view = TabbedPageView()
view.kwargs = {'name': page.name}
......
......@@ -9,7 +9,7 @@ class TabbedPageView(TemplateView):
@property
def tabs(self):
return self.page.tab_set.all().order_by('position')
return self.page.tabs.all().order_by('position')
@property
def page(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment