Explorar el Código

[ADD] password changing

Gogs hace 7 años
padre
commit
ae99a9073d
Se han modificado 4 ficheros con 12 adiciones y 12 borrados
  1. 7 3
      api/resources/user_resource.py
  2. 4 5
      core/migrations/0001_initial.py
  3. 0 2
      core/models/base.py
  4. 1 2
      core/models/user.py

+ 7 - 3
api/resources/user_resource.py

@@ -53,12 +53,16 @@ class UserResource(ModelResource):
                 'error_message': 'password is not provided'
             })
 
-        bundle = self.build_bundle(obj=json.loads(request.body), request=request)
+        body = json.loads(request.body)
+        user = User.objects.get(pk=kwargs.get('pk'))
 
-        import pdb; pdb.set_trace()
+        user.set_password(body['password'])
+
+        bundle = self.build_bundle(obj=user, request=request)
+        bundle = self.full_dehydrate(bundle)
 
         return self.create_response(request, {
-            self._meta.resource_name: 'ok'
+            self._meta.resource_name: bundle
         })
 
     '''

+ 4 - 5
core/migrations/0001_initial.py

@@ -1,12 +1,11 @@
 # -*- coding: utf-8 -*-
-# Generated by Django 1.11 on 2018-03-01 13:35
+# Generated by Django 1.11 on 2018-03-02 11:51
 from __future__ import unicode_literals
 
 import django.contrib.auth.models
 import django.contrib.auth.validators
 from django.db import migrations, models
 import django.utils.timezone
-import uuid
 
 
 class Migration(migrations.Migration):
@@ -21,6 +20,7 @@ class Migration(migrations.Migration):
         migrations.CreateModel(
             name='User',
             fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                 ('password', models.CharField(max_length=128, verbose_name='password')),
                 ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
                 ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
@@ -31,7 +31,6 @@ class Migration(migrations.Migration):
                 ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')),
                 ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')),
                 ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')),
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                 ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')),
                 ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')),
             ],
@@ -47,7 +46,7 @@ class Migration(migrations.Migration):
         migrations.CreateModel(
             name='Request',
             fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                 ('name', models.CharField(max_length=35)),
                 ('create_at', models.DateTimeField(auto_now_add=True)),
                 ('update_at', models.DateTimeField(auto_now=True)),
@@ -60,7 +59,7 @@ class Migration(migrations.Migration):
         migrations.CreateModel(
             name='Task',
             fields=[
-                ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                 ('name', models.CharField(max_length=35)),
                 ('create_at', models.DateTimeField(auto_now_add=True)),
                 ('update_at', models.DateTimeField(auto_now=True)),

+ 0 - 2
core/models/base.py

@@ -1,12 +1,10 @@
 # -*- coding: utf-8 -*-
 from __future__ import unicode_literals
 from django.db import models
-import uuid
 
 '''
 '''
 class Base(models.Model):
-    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
     name = models.CharField(max_length=35, blank=False)
     create_at = models.DateTimeField(auto_now_add=True)
     update_at = models.DateTimeField(auto_now=True)

+ 1 - 2
core/models/user.py

@@ -3,9 +3,8 @@ from __future__ import unicode_literals
 from django.contrib.auth.models import AbstractUser
 from django.contrib import auth
 from django.db import models
-import uuid
 
 '''
 '''
 class User(AbstractUser):
-    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
+    pass