add Answer model

remotes/origin/setup
Mukhtar 10 years ago
parent dc79637e89
commit bfe59db1a6
  1. 3
      projects/admin.py
  2. 31
      projects/migrations/0002_answer.py
  3. 28
      projects/models.py
  4. 27
      users/migrations/0002_auto_20160519_0807.py
  5. 12
      users/models.py

@ -1,7 +1,8 @@
from django.contrib import admin from django.contrib import admin
from .models import Project, Portfolio, PortfolioPhoto from .models import Project, Portfolio, PortfolioPhoto, Answer
admin.site.register(Project) admin.site.register(Project)
admin.site.register(Answer)
admin.site.register(Portfolio) admin.site.register(Portfolio)
admin.site.register(PortfolioPhoto) admin.site.register(PortfolioPhoto)

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.6 on 2016-05-19 08:44
from __future__ import unicode_literals
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('projects', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Answer',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('cost', models.DecimalField(decimal_places=2, max_digits=10)),
('cost_type', models.CharField(choices=[('RUR', 'rur'), ('USD', 'usd'), ('EUR', 'eur')], default='RUR', max_length=5)),
('text', models.TextField()),
('term', models.DecimalField(decimal_places=2, max_digits=10)),
('term_type', models.CharField(choices=[('HOUR', 'hour'), ('DAY', 'day'), ('MONTH', 'month')], default='hour', max_length=10)),
('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='projects.Project')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to=settings.AUTH_USER_MODEL)),
],
),
]

@ -22,6 +22,34 @@ class Project(models.Model):
verbose_name_plural = 'Проекты' verbose_name_plural = 'Проекты'
class Answer(models.Model):
COST_TYPE_CHOICES = (
('RUR', 'rur'),
('USD', 'usd'),
('EUR', 'eur'),
)
TERM_TYPE_CHOICES = (
('HOUR', 'hour'),
('DAY', 'day'),
('MONTH', 'month'),
)
cost = models.DecimalField(max_digits=10, decimal_places=2)
cost_type = models.CharField(max_length=5, choices=COST_TYPE_CHOICES, default='RUR')
text = models.TextField()
term = models.DecimalField(max_digits=10, decimal_places=2)
term_type = models.CharField(max_length=10, choices=TERM_TYPE_CHOICES, default='hour')
project = models.ForeignKey(Project, related_name='answers')
user = models.ForeignKey(User, related_name='answers')
def __str__(self):
return self.text
class Meta:
verbose_name = 'Ответ к проекту'
verbose_name_plural = 'Ответы к проектам'
class Portfolio(models.Model): class Portfolio(models.Model):
name = models.CharField(max_length=255) name = models.CharField(max_length=255)
description = models.TextField() description = models.TextField()

@ -0,0 +1,27 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.6 on 2016-05-19 08:07
from __future__ import unicode_literals
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('users', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='team',
name='owner',
field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='team', to=settings.AUTH_USER_MODEL),
),
migrations.AlterField(
model_name='team',
name='users',
field=models.ManyToManyField(blank=True, related_name='teams', to=settings.AUTH_USER_MODEL),
),
]

@ -55,13 +55,21 @@ class User(AbstractBaseUser, PermissionsMixin):
perform_objects = PerformUserManager() perform_objects = PerformUserManager()
customers_objects = CustomerUserManager() customers_objects = CustomerUserManager()
class Meta:
verbose_name = 'Пользователь'
verbose_name_plural = 'Пользователи'
class Team(models.Model): class Team(models.Model):
name = models.CharField(max_length=255) name = models.CharField(max_length=255)
users = models.ManyToManyField(User, blank=True) users = models.ManyToManyField(User, related_name ='teams', blank=True)
owner = models.OneToOneField(User, related_name='team') owner = models.OneToOneField(User, related_name='team', null=True)
def __str__(self): def __str__(self):
return self.name return self.name
class Meta:
verbose_name = 'Команда'
verbose_name_plural = 'Команды'

Loading…
Cancel
Save