Przeglądaj źródła

group校验完成

zoe 4 lat temu
rodzic
commit
eacb3a77e3

+ 12 - 0
account/admin.py

@@ -1,3 +1,15 @@
 from django.contrib import admin
 from django.contrib import admin
+from .models import Profile, Devices
+
 
 
 # Register your models here.
 # Register your models here.
+class ProfileAdmin(admin.ModelAdmin):
+    list_display = ["user", "email", "root_folder_id"]
+
+
+class DevicesAdmin(admin.ModelAdmin):
+    list_display = ["user", "last_login_time", "device_uid", "token"]
+
+
+admin.site.register(Profile, ProfileAdmin)
+admin.site.register(Devices, DevicesAdmin)

+ 37 - 0
account/migrations/0001_initial.py

@@ -0,0 +1,37 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:01
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('folder', '0001_initial'),
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Profile',
+            fields=[
+                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('email', models.CharField(blank=True, max_length=20)),
+                ('root_folder', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, related_name='root_folder', to='folder.folder')),
+                ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Devices',
+            fields=[
+                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('last_login_time', models.DateField(auto_now=True)),
+                ('device_uid', models.CharField(default='233', max_length=100, unique=True)),
+                ('token', models.CharField(default='233', max_length=100, unique=True)),
+                ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='devices', to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+    ]

+ 27 - 0
account/migrations/0002_auto_20210908_2303.py

@@ -0,0 +1,27 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:03
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('folder', '0001_initial'),
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('account', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='profile',
+            name='root_folder',
+            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='root_folder', to='folder.folder'),
+        ),
+        migrations.AlterField(
+            model_name='profile',
+            name='user',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL),
+        ),
+    ]

+ 21 - 0
account/migrations/0003_alter_profile_user.py

@@ -0,0 +1,21 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:06
+
+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),
+        ('account', '0002_auto_20210908_2303'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='profile',
+            name='user',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
+        ),
+    ]

+ 27 - 0
account/migrations/0004_auto_20210908_2313.py

@@ -0,0 +1,27 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:13
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('folder', '0001_initial'),
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('account', '0003_alter_profile_user'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='profile',
+            name='root_folder',
+            field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='profile', to='folder.folder'),
+        ),
+        migrations.AlterField(
+            model_name='profile',
+            name='user',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL),
+        ),
+    ]

+ 2 - 2
account/models.py

@@ -13,11 +13,11 @@ from django.dispatch import receiver
 # Create your views here.
 # Create your views here.
 class Profile(models.Model):
 class Profile(models.Model):
     # 对应django自带的user
     # 对应django自带的user
-    user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='profile')
+    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='profile')
     # 邮箱
     # 邮箱
     email = models.CharField(max_length=20, blank=True)
     email = models.CharField(max_length=20, blank=True)
     # 对应的根目录
     # 对应的根目录
-    root_folder = models.OneToOneField(Folder, on_delete=models.CASCADE, related_name='root_folder')
+    root_folder = models.ForeignKey(Folder, null=True, on_delete=models.DO_NOTHING, related_name='profile')
 
 
     def __str__(self):
     def __str__(self):
         return 'user {}'.format(self.user.username)
         return 'user {}'.format(self.user.username)

+ 19 - 0
account/templates/create_group.html

@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html lang="zh-cn">
+    <div>
+        <form method="post" action=".">
+            {% csrf_token %}
+            <!-- 昵称 -->
+            <div>
+                <label for="username">昵称</label>
+                <input type="text" id="username" name="username">
+            </div>
+            <!-- 群名 -->
+            <div>
+                <label for="group_name">昵称</label>
+                <input type="text" id="group_name" name="group_name">
+            </div>
+            <button type="submit">提交</button>
+        </form>
+    </div>
+</html>

+ 16 - 2
account/views.py

@@ -1,9 +1,13 @@
+import string
+
 from django.shortcuts import render
 from django.shortcuts import render
+
+from folder.models import Folder
 from .form import UserLoginForm, UserRegisterForm
 from .form import UserLoginForm, UserRegisterForm
 from django.contrib.auth import authenticate, login, logout
 from django.contrib.auth import authenticate, login, logout
 from django.http import HttpResponse
 from django.http import HttpResponse
-from .models import Devices
-
+from .models import Devices, Profile
+from django.contrib.auth.models import User
 import random
 import random
 import datetime
 import datetime
 import json
 import json
@@ -110,6 +114,16 @@ def user_register(request):
             new_user.set_password(user_register_form.cleaned_data['password'])
             new_user.set_password(user_register_form.cleaned_data['password'])
             # 保存
             # 保存
             new_user.save()
             new_user.save()
+
+            user_id_random = ''.join(random.sample(string.ascii_letters + string.digits, 8))
+            folder_1 = Folder.objects.create(folder_id=user_id_random,
+                                             folder_name=request.user.username,
+                                             father_folder=None)
+            folder_1.save()
+            user_1 = Profile.objects.create(user=Profile.user.username,
+                                            email=Profile.email,
+                                            root_folder=folder_1)
+            user_1.save()
             return HttpResponse(status=200)
             return HttpResponse(status=200)
         else:
         else:
             return HttpResponse(status=400)
             return HttpResponse(status=400)

BIN
db.sqlite3


+ 7 - 0
file/admin.py

@@ -1,3 +1,10 @@
 from django.contrib import admin
 from django.contrib import admin
+from .models import File
+
 
 
 # Register your models here.
 # Register your models here.
+class FileAdmin(admin.ModelAdmin):
+    list_display = ["file_id", "file_name", "folder", "file_path", "update_time", "file_type", "file_size"]
+
+
+admin.site.register(File, FileAdmin)

+ 28 - 0
file/migrations/0001_initial.py

@@ -0,0 +1,28 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:01
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('folder', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='File',
+            fields=[
+                ('file_id', models.AutoField(primary_key=True, serialize=False)),
+                ('file_name', models.CharField(max_length=50)),
+                ('file_path', models.CharField(max_length=128)),
+                ('update_time', models.DateTimeField()),
+                ('file_type', models.CharField(max_length=32)),
+                ('file_size', models.CharField(max_length=16)),
+                ('folder', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='file_folder', to='folder.folder')),
+            ],
+        ),
+    ]

+ 7 - 2
file/views.py

@@ -1,9 +1,12 @@
+import random
+import string
+
 from django.shortcuts import render, redirect
 from django.shortcuts import render, redirect
 from django.contrib.auth.decorators import login_required
 from django.contrib.auth.decorators import login_required
 from file.models import File
 from file.models import File
 from django.http import FileResponse, JsonResponse, HttpResponse
 from django.http import FileResponse, JsonResponse, HttpResponse
 from django.utils import timezone
 from django.utils import timezone
-from judgement_function import judge_filepath, format_size
+from .judgement_function import judge_filepath, format_size
 from django.utils.http import urlquote
 from django.utils.http import urlquote
 from django.contrib.auth.models import User
 from django.contrib.auth.models import User
 import json
 import json
@@ -23,6 +26,7 @@ DEBUG = 1
 @login_required
 @login_required
 def upload_file(request):
 def upload_file(request):
     if request.method == "POST":
     if request.method == "POST":
+        data = request.POST
         file_obj = request.FILES.get('file')
         file_obj = request.FILES.get('file')
         file_type = judge_filepath(file_obj.name.split('.')[-1].lower())
         file_type = judge_filepath(file_obj.name.split('.')[-1].lower())
         file_folder = request.POST.get('file_path')
         file_folder = request.POST.get('file_path')
@@ -31,7 +35,8 @@ def upload_file(request):
         file_name = file_obj.name
         file_name = file_obj.name
         save_path = BASE_DIR + '/' + file_folder
         save_path = BASE_DIR + '/' + file_folder
         file_path = file_folder + '/' + file_name
         file_path = file_folder + '/' + file_name
-        File.objects.create(file_id=request.File.file_id,
+        file_id_1 = ''.join(random.sample(string.digits, 8))
+        File.objects.create(file_id=file_id_1,
                             file_name=file_name,
                             file_name=file_name,
                             folder=file_folder,
                             folder=file_folder,
                             file_path=file_path,
                             file_path=file_path,

+ 7 - 0
folder/admin.py

@@ -1,3 +1,10 @@
 from django.contrib import admin
 from django.contrib import admin
+from .models import Folder
+
 
 
 # Register your models here.
 # Register your models here.
+class FolderAdmin(admin.ModelAdmin):
+    list_display = ["folder_id", "folder_name", "father_folder"]
+
+
+admin.site.register(Folder, FolderAdmin)

+ 23 - 0
folder/migrations/0001_initial.py

@@ -0,0 +1,23 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:01
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Folder',
+            fields=[
+                ('folder_id', models.AutoField(primary_key=True, serialize=False)),
+                ('folder_name', models.CharField(max_length=50)),
+                ('father_folder', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='the_father_folder', to='folder.folder')),
+            ],
+        ),
+    ]

+ 4 - 3
folder/models.py

@@ -2,15 +2,16 @@ from django.db import models
 
 
 
 
 # 文件夹表
 # 文件夹表
+from django.db.models import SET_NULL
+
+
 class Folder(models.Model):
 class Folder(models.Model):
     # 文件夹id
     # 文件夹id
     folder_id = models.AutoField(primary_key=True)
     folder_id = models.AutoField(primary_key=True)
     # 文件夹名
     # 文件夹名
     folder_name = models.CharField(max_length=50, blank=False)
     folder_name = models.CharField(max_length=50, blank=False)
     # 父节点
     # 父节点
-    father_folder = models.ForeignKey('self', blank=True, on_delete=models.CASCADE, related_name='father_folder')
-
-
+    father_folder = models.ForeignKey('self', blank=True, on_delete=SET_NULL, null=True, related_name='the_father_folder')
 
 
     def __unicode__(self):
     def __unicode__(self):
         return self.folder_id
         return self.folder_id

+ 12 - 9
folder/views.py

@@ -1,7 +1,7 @@
 from django.http import HttpResponse
 from django.http import HttpResponse
 from django.shortcuts import render
 from django.shortcuts import render
 from django.contrib.auth.decorators import login_required
 from django.contrib.auth.decorators import login_required
-from models import Folder
+from .models import Folder
 from file.models import File
 from file.models import File
 from django.contrib.auth.models import User
 from django.contrib.auth.models import User
 import json
 import json
@@ -14,9 +14,10 @@ DEBUG = 1
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def folder_list(request):
 def folder_list(request):
     if request.method == 'POST':
     if request.method == 'POST':
+        data = request.POST
         # 获取所有文件夹
         # 获取所有文件夹
-        folders = Folder.objects.filter(father_folder=request.Folder).get()
-        files = File.objects.filter(folder=request.Folder).get()
+        folders = Folder.objects.filter(father_folder__folder_id=data['folder_id']).get()
+        files = File.objects.filter(folder__folder_id=data['folder_id']).get()
         response = []
         response = []
         for i in folders:
         for i in folders:
             response.append(i)
             response.append(i)
@@ -33,14 +34,15 @@ def folder_list(request):
 # 增文件夹
 # 增文件夹
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def add_folder(request):
 def add_folder(request):
-    if request.method == 'post':
-        folder = Folder.objects.filter(father_folder__folder_id=request.Folder.folder_id).get()
+    if request.method == 'POST':
+        data = request.POST
+        folder = Folder.objects.filter(father_folder__folder_id=data['folder_id']).get()
         if not folder:
         if not folder:
             # 查无此文件夹
             # 查无此文件夹
             return HttpResponse(status=421)
             return HttpResponse(status=421)
         else:
         else:
-            Folder.objects.create(folder_id=request.Folder.folder_id,
-                                  folder_name=request.Folder.folder_name,
+            Folder.objects.create(folder_id=data['folder_id'],
+                                  folder_name=data['folder_name'],
                                   father_folder=folder)
                                   father_folder=folder)
             return HttpResponse(status=200)
             return HttpResponse(status=200)
     elif request.method == 'GET':
     elif request.method == 'GET':
@@ -52,8 +54,9 @@ def add_folder(request):
 # 删除文件夹
 # 删除文件夹
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def delete_folder(request):
 def delete_folder(request):
-    if request.method == 'post':
-        folder = Folder.objects.filter(folder_id=request.Folder.folder_id).get()
+    if request.method == 'POST':
+        data = request.POST
+        folder = Folder.objects.filter(folder_id=data['folder_id']).get()
         if not folder:
         if not folder:
             # 查无此文件夹
             # 查无此文件夹
             return HttpResponse(status=421)
             return HttpResponse(status=421)

+ 7 - 0
group/admin.py

@@ -1,3 +1,10 @@
 from django.contrib import admin
 from django.contrib import admin
+from .models import Group
+
 
 
 # Register your models here.
 # Register your models here.
+class GroupAdmin(admin.ModelAdmin):
+    list_display = ["group_id", "group_name", "creator", "folder"]
+
+
+admin.site.register(Group, GroupAdmin)

+ 56 - 0
group/interface.md

@@ -0,0 +1,56 @@
+# 请求群列表
+******
+## 请求(POST)
+请求链接:group/group_list
+
+username(请求者的名字)
+## 返回值(http状态码+(列表))
+200+列表:成功+群组名称列表
+
+400:请求不合法
+
+# 请求进群
+******
+## 请求(POST)
+请求链接:group/add_group
+
+username(请求者的名字)
+group_id(群号)
+## 返回值(http状态码)
+421:此人已在群里
+
+200:请求成功,等待对方同意
+
+422:此人不存在
+
+400:请求不合法
+
+# 请求创建群聊
+******
+## 请求(POST)
+请求链接:group/create_group/
+
+username(请求者的名字)
+## 返回值(http状态码+列表)
+200:创建成功
+
+422:此人不存在
+
+400:请求不合法
+
+# 离开群聊
+******
+## 请求(POST)
+请求链接:group/leave_group
+
+username(请求者的名字)
+group_id(群号)
+## 返回值(http状态码)
+200:成功
+
+400:请求不合法
+
+421:此人不在群组里
+
+422:此人不存在
+

+ 28 - 0
group/migrations/0001_initial.py

@@ -0,0 +1,28 @@
+# Generated by Django 3.2.7 on 2021-09-08 15:01
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        ('folder', '0001_initial'),
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Group',
+            fields=[
+                ('group_id', models.AutoField(primary_key=True, serialize=False)),
+                ('group_name', models.CharField(max_length=50)),
+                ('creator', models.CharField(max_length=50)),
+                ('folder', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='group_folder', to='folder.folder')),
+                ('member', models.ManyToManyField(to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+    ]

+ 4 - 1
group/models.py

@@ -1,9 +1,12 @@
 from django.db import models
 from django.db import models
-from folder.models import Folder
+
 from django.contrib.auth.models import User
 from django.contrib.auth.models import User
 
 
 
 
 # 群表
 # 群表
+from folder.models import Folder
+
+
 class Group(models.Model):
 class Group(models.Model):
     # 群id
     # 群id
     group_id = models.AutoField(primary_key=True)
     group_id = models.AutoField(primary_key=True)

+ 1 - 0
group/urls.py

@@ -6,4 +6,5 @@ urlpatterns = [
     path('add_group/', views.add_group, name='add_group'),
     path('add_group/', views.add_group, name='add_group'),
     path('leave_group/', views.leave_group, name='leave_group'),
     path('leave_group/', views.leave_group, name='leave_group'),
     path('group_list/', views.group_list, name='group_list'),
     path('group_list/', views.group_list, name='group_list'),
+    path('create_group/', views.create_group, name='create_group')
 ]
 ]

+ 32 - 36
group/views.py

@@ -1,7 +1,7 @@
 from django.http import HttpResponse
 from django.http import HttpResponse
 from django.shortcuts import render
 from django.shortcuts import render
 from django.contrib.auth.decorators import login_required
 from django.contrib.auth.decorators import login_required
-from models import Group
+from .models import Group
 from django.contrib.auth.models import User
 from django.contrib.auth.models import User
 from folder.models import Folder
 from folder.models import Folder
 import json
 import json
@@ -15,13 +15,14 @@ DEBUG = 1
 # 首先是 加入/退出 群组,客户端发送申请,把该用户直接 加入/删除 该群组的对象
 # 首先是 加入/退出 群组,客户端发送申请,把该用户直接 加入/删除 该群组的对象
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def add_group(request):
 def add_group(request):
-    if request.method == 'post':
+    if request.method == 'POST':
+        data = request.POST
         # 查找是否有此人
         # 查找是否有此人
-        user = User.objects.filter(username=request.user.username).get()
+        user = User.objects.filter(username=data['username']).get()
         if user:
         if user:
             # 查找此人是否已经在群组里
             # 查找此人是否已经在群组里
-            group = Group.objects.filter(group_id=request.Group.group_id).get()
-            if user in group.member:
+            group = Group.objects.filter(group_id=data['group_id']).get()
+            if group.member.filter(username=user.username).count() > 0:
                 # 此人已在群组里
                 # 此人已在群组里
                 return HttpResponse(status=421)
                 return HttpResponse(status=421)
             else:
             else:
@@ -39,35 +40,28 @@ def add_group(request):
 
 
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def create_group(request):
 def create_group(request):
-    if request.method == 'post':
+    if request.method == 'POST':
+        data = request.POST
         # 查找是否有此人
         # 查找是否有此人
-        user = User.objects.filter(username=request.user.username).get()
+        user = User.objects.filter(username=request.user.username)
         if user:
         if user:
-            # 查找此群是否有人注册
-            group = Group.objects.filter(group_id=request.Group.group_id).get()
-            if group:
-                # 此群有人注册
-                return HttpResponse(status=421)
-            else:
-                group_id_random = ''.join(random.sample(string.ascii_letters + string.digits, 8))
-                while Group.objects.filter(group_id=group_id_random) is not None:
-                    group_id_random = ''.join(random.sample(string.ascii_letters + string.digits, 8))
-                folder_1 = Folder.objects.create(folder_id=group_id_random,
-                                                 folder_name=request.Group.group_name,
-                                                 father_folder=None)
-                folder_1.save()
-                group_1 = Group.objects.create(group_id=group_id_random,
-                                               group_name=request.Group.group_name,
-                                               creator=request.user.username,
-                                               folder=folder_1,
-                                               member=user)
-                group_1.save()
-                return HttpResponse(status=200)
+            group_id_random = ''.join(random.sample(string.digits, 8))
+            folder_1 = Folder.objects.create(folder_id=group_id_random,
+                                             folder_name=data['group_name'],
+                                             father_folder=None)
+            folder_1.save()
+            group_1 = Group.objects.create(group_id=group_id_random,
+                                           group_name=data['group_name'],
+                                           creator=request.user.username,
+                                           folder=folder_1,)
+            group_1.member.set(user)
+            group_1.save()
+            return HttpResponse(status=200)
         else:
         else:
             return HttpResponse(status=422)
             return HttpResponse(status=422)
     elif request.method == 'GET':
     elif request.method == 'GET':
         if DEBUG:
         if DEBUG:
-            return render(request, 'add_group.html')
+            return render(request, 'create_group.html')
     else:
     else:
         return HttpResponse(status=400)
         return HttpResponse(status=400)
 
 
@@ -76,17 +70,18 @@ def create_group(request):
 
 
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def leave_group(request):
 def leave_group(request):
-    if request.method == 'post':
+    if request.method == 'POST':
+        data = request.POST
         # 查找是否有此人
         # 查找是否有此人
-        user = User.objects.filter(username=request.user.username).get()
+        user = User.objects.filter(username=data['username']).get()
         if user:
         if user:
             # 查找此人是否已经在群组里
             # 查找此人是否已经在群组里
-            group = Group.objects.filter(group_id=request.Group.group_id).get()
-            if user in group.member:
-                # 此人在群组里
+            group = Group.objects.filter(group_id=data['group_id']).get()
+            if group.member.filter(username=user.username).count() == 0:
+                # 此人在群组里
                 return HttpResponse(status=421)
                 return HttpResponse(status=421)
             else:
             else:
-                group.member.delete(user)
+                group.member.remove(user)
                 group.save()
                 group.save()
                 return HttpResponse(status=200)
                 return HttpResponse(status=200)
         else:
         else:
@@ -102,11 +97,12 @@ def leave_group(request):
 @login_required(login_url='/account/login/')
 @login_required(login_url='/account/login/')
 def group_list(request):
 def group_list(request):
     if request.method == 'POST':
     if request.method == 'POST':
+        data = request.POST
         # 获取群组
         # 获取群组
-        groups = Group.objects.filter(member__username=request.user.username)
+        groups = Group.objects.filter(member__username=data['username'])
         response = []
         response = []
         for i in groups:
         for i in groups:
-            response.append(i)
+            response.append(i.group_name)
         return HttpResponse(json.dumps(response), status=200)
         return HttpResponse(json.dumps(response), status=200)
     elif request.method == 'GET':
     elif request.method == 'GET':
         if DEBUG:
         if DEBUG:

+ 4 - 7
st_cloud/settings.py

@@ -38,15 +38,12 @@ INSTALLED_APPS = [
     'django.contrib.messages',
     'django.contrib.messages',
     'django.contrib.staticfiles',
     'django.contrib.staticfiles',
     'rest_framework',
     'rest_framework',
+    'group',
+    'folder',
+    'file',
+    'account',
 ]
 ]
 
 
-# 设置权限策略:
-REST_FRAMEWORK = {
-    'DEFAULT_PERMISSION_CLASSES': [
-        'rest_framework.permissions.IsAdminUser',
-    ],
-    'PAGE_SIZE': 10
-}
 
 
 MIDDLEWARE = [
 MIDDLEWARE = [
     'django.middleware.security.SecurityMiddleware',
     'django.middleware.security.SecurityMiddleware',

+ 5 - 1
st_cloud/urls.py

@@ -14,8 +14,12 @@ Including another URLconf
     2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
     2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
 """
 """
 from django.contrib import admin
 from django.contrib import admin
-from django.urls import path
+from django.urls import path, include
 
 
 urlpatterns = [
 urlpatterns = [
     path('admin/', admin.site.urls),
     path('admin/', admin.site.urls),
+    path('group/', include(('group.urls', "group"), namespace='group')),
+    path('folder/', include(('folder.urls', "folder"), namespace='folder')),
+    path('file/', include(('file.urls', "file"), namespace='file')),
+    path('account/', include(('account.urls', "account"), namespace='account')),
 ]
 ]

+ 1 - 10
templates/add_group.html

@@ -13,16 +13,7 @@
                 <label for="group_id">群号</label>
                 <label for="group_id">群号</label>
                 <input type="text" id="group_id" name="group_id">
                 <input type="text" id="group_id" name="group_id">
             </div>
             </div>
-            <!-- 密码 -->
-            <div>
-                <label for="password">设置密码</label>
-                <input type="password" id="password" name="password" required>
-            </div>
-            <!-- 确认密码 -->
-            <div>
-                <label for="password2">确认密码</label>
-                <input type="password" id="password2" name="password2" required>
-            </div>
+
             <!-- 提交按钮 -->
             <!-- 提交按钮 -->
             <button type="submit">提交</button>
             <button type="submit">提交</button>
         </form>
         </form>

+ 1 - 15
templates/group_list.html

@@ -8,21 +8,7 @@
                 <label for="username">昵称</label>
                 <label for="username">昵称</label>
                 <input type="text" id="username" name="username">
                 <input type="text" id="username" name="username">
             </div>
             </div>
-            <!-- 邮箱 -->
-            <div>
-                <label for="email">邮箱</label>
-                <input type="text" id="email" name="email">
-            </div>
-            <!-- 密码 -->
-            <div>
-                <label for="password">设置密码</label>
-                <input type="password" id="password" name="password" required>
-            </div>
-            <!-- 确认密码 -->
-            <div>
-                <label for="password2">确认密码</label>
-                <input type="password" id="password2" name="password2" required>
-            </div>
+
             <!-- 提交按钮 -->
             <!-- 提交按钮 -->
             <button type="submit">提交</button>
             <button type="submit">提交</button>
         </form>
         </form>

+ 5 - 14
templates/leave_group.html

@@ -5,24 +5,15 @@
             {% csrf_token %}
             {% csrf_token %}
             <!-- 昵称 -->
             <!-- 昵称 -->
             <div>
             <div>
-                <label for="username">称</label>
+                <label for="username">称</label>
                 <input type="text" id="username" name="username">
                 <input type="text" id="username" name="username">
             </div>
             </div>
-            <!-- 邮箱 -->
+            <!-- 群号 -->
             <div>
             <div>
-                <label for="email">邮箱</label>
-                <input type="text" id="email" name="email">
-            </div>
-            <!-- 密码 -->
-            <div>
-                <label for="password">设置密码</label>
-                <input type="password" id="password" name="password" required>
-            </div>
-            <!-- 确认密码 -->
-            <div>
-                <label for="password2">确认密码</label>
-                <input type="password" id="password2" name="password2" required>
+                <label for="group_id">群号</label>
+                <input type="text" id="group_id" name="group_id">
             </div>
             </div>
+
             <!-- 提交按钮 -->
             <!-- 提交按钮 -->
             <button type="submit">提交</button>
             <button type="submit">提交</button>
         </form>
         </form>