Fiddle around

remotes/origin/setup
ArturBaybulatov 10 years ago
parent e2a449633a
commit 9a9c8ddc4a
  1. 17
      assets/index.js
  2. 4
      projects/filters.py
  3. 10
      projects/forms.py
  4. 23
      projects/migrations/0003_auto_20160518_1132.py
  5. 5
      projects/models.py
  6. 11
      projects/serializers.py
  7. 2
      projects/views.py
  8. 12
      users/models.py
  9. 5
      users/serializers.py

@ -29,7 +29,18 @@ app.run(['$rootScope', '$timeout', '$http',
app.controller('TestCtrl', ['$scope', '$http', function TestCtrl($scope, $http) {
var test = g.test = this
$http.get('/api/users/?is_admin=False').then(function(res) {
test.users = res.data.results
})
//$http.get('/api/users/?is_admin=False').then(function(res) {
// test.users = res.data.results
//})
test.x = null
$scope.$watch(
function() {return test.x},
function(newVal, oldVal) {
if (newVal !== oldVal)
console.log(test.x)
}
)
}])

@ -5,8 +5,8 @@ class ProjectFilterSet(FilterSet):
name = AllLookupsFilter()
price = AllLookupsFilter()
text = AllLookupsFilter()
user = RelatedFilter('users.filters.UserFilterSet')
specialization = RelatedFilter('specializations.filters.SpecializationFilterSet')
# user = RelatedFilter('users.filters.UserFilterSet')
# specialization = RelatedFilter('specializations.filters.SpecializationFilterSet')
class Meta:
model = Project

@ -2,7 +2,13 @@ from django.forms import ModelForm
from .models import Project
class ProjectForm(ModelForm):
class Meta:
model = Project
fields = ['name', 'text', 'price', 'user','specialization']
fields = (
'name',
'text',
'price',
# 'user',
# 'specialization',
)

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.6 on 2016-05-18 11:32
from __future__ import unicode_literals
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('projects', '0002_auto_20160517_0903'),
]
operations = [
migrations.RemoveField(
model_name='project',
name='specialization',
),
migrations.RemoveField(
model_name='project',
name='user',
),
]

@ -8,11 +8,12 @@ class Project(models.Model):
name = models.CharField(max_length=255)
price = models.DecimalField(max_digits=10, decimal_places=2)
text = models.TextField(blank=True)
# user = models.ForeignKey(User, related_name='projects')
# specialization = models.ForeignKey(Specialization, related_name='projects', blank=True, null=True) # TODO: Make required
# type_work = models.CharField()
# budget = models.CharField()
# cro = models.BooleanField(default=False)
user = models.ForeignKey(User, related_name='projects')
specialization = models.ForeignKey(Specialization, related_name='projects', blank=True, null=True) # TODO: Make required
def __str__(self):
return self.name

@ -5,20 +5,17 @@ from specializations.serializers import SpecializationSerializer
from users.serializers import UserSerializer
class ProjectSerializer(ModelSerializer):
user = UserSerializer()
specialization = SpecializationSerializer()
# specialization = SpecializationSerializer()
# user = UserSerializer()
class Meta:
model = Project
fields = (
'id',
# 'specialization',
# 'user',
'name',
'price',
'specialization',
'text',
'user',
)
def create(self, validated_data):
return Project.objects.create(**validated_data)

@ -16,11 +16,11 @@ class ProjectListView(ListView):
context = super(ProjectListView, self).get_context_data(**kwargs)
return context
class ProjectDetailView(DetailView):
model = Project
class ProjectCreateView(PermissionRequiredMixin, CreateView):
model = Project
permission_required = ['projects.add_project']

@ -7,12 +7,12 @@ class UserManager(BaseUserManager):
def create_user(self, email, password=None):
if not email:
raise ValueError('Users must have an email address')
user = self.model(email=UserManager.normalize_email(email),)
user.set_password(password)
user.save(using=self._db)
return user
def create_superuser(self, email, password):
user = self.create_user(email, password)
user.is_admin = True
@ -40,16 +40,16 @@ class User(AbstractBaseUser, PermissionsMixin):
@property
def is_staff(self):
return self.is_admin
def __str__(self):
return self.email
def get_short_name(self):
return self.email
def get_full_name(self):
return self.first_name + ' ' + self.last_name
# def has_perm(self, perm, obj=None):
# perm = perm.split('.')[-1]
# if self.user and not self.user.is_active:

@ -21,11 +21,10 @@ class UserSerializer(ModelSerializer):
read_only_fields = (
'is_active',
'is_admin',
'projects',
)
def create(self, validated_data):
return User.objects.create(**validated_data)
# def create(self, validated_data):
# return User.objects.create(**validated_data)
# def update(self, inst, validated_data):
# inst.email = validated_data.get('email', inst.email)

Loading…
Cancel
Save