diff --git a/serve/serve/models/__pycache__/user.cpython-311.pyc b/serve/serve/models/__pycache__/user.cpython-311.pyc index 0ab4021..6d3eb20 100644 Binary files a/serve/serve/models/__pycache__/user.cpython-311.pyc and b/serve/serve/models/__pycache__/user.cpython-311.pyc differ diff --git a/serve/serve/models/user.py b/serve/serve/models/user.py index 0823cf5..792b2c4 100644 --- a/serve/serve/models/user.py +++ b/serve/serve/models/user.py @@ -1,6 +1,12 @@ -import mongoengine +from mongoengine import Document, EmbeddedDocument, fields -class UserModel(mongoengine.Document): - username = mongoengine.StringField(max_length=30) - password = mongoengine.StringField(max_length=30) +class SubjectModel(EmbeddedDocument): + subjectName = fields.StringField() + subjectScore = fields.IntField() + + +class UserModel(Document): + username = fields.StringField(max_length=30) + password = fields.StringField(max_length=30) + subjects = fields.ListField(fields.EmbeddedDocumentField(SubjectModel)) diff --git a/serve/serve/utils/__pycache__/connectdb.cpython-311.pyc b/serve/serve/utils/__pycache__/connectdb.cpython-311.pyc new file mode 100644 index 0000000..af1819b Binary files /dev/null and b/serve/serve/utils/__pycache__/connectdb.cpython-311.pyc differ diff --git a/serve/serve/utils/__pycache__/test.cpython-311.pyc b/serve/serve/utils/__pycache__/test.cpython-311.pyc new file mode 100644 index 0000000..99dd4da Binary files /dev/null and b/serve/serve/utils/__pycache__/test.cpython-311.pyc differ diff --git a/serve/serve/utils/connectdb.py b/serve/serve/utils/connectdb.py new file mode 100644 index 0000000..aaf2247 --- /dev/null +++ b/serve/serve/utils/connectdb.py @@ -0,0 +1,9 @@ +from pymongo import MongoClient + + +def connectdb(collectionName): + # 连接到 MongoDB 数据库 + client = MongoClient('mongodb://localhost:27017/') + db = client['employee-information-management-system'] + collection = db[collectionName] + return collection diff --git a/serve/serve/utils/test.py b/serve/serve/utils/test.py new file mode 100644 index 0000000..b16759b --- /dev/null +++ b/serve/serve/utils/test.py @@ -0,0 +1,17 @@ +from pymongo import MongoClient +from bson.objectid import ObjectId + +def test(): + # 连接到 MongoDB 数据库 + client = MongoClient('mongodb://localhost:27017/') + db = client['employee-information-management-system'] + collection = db['user_model'] + + # 获取文档的 _id 字段的值 + document_id = '660195d50d5cb377410134f7' # 替换为你要查找的文档的 _id + document = collection.find_one({'_id': ObjectId(document_id)}) + if document: + document_id = document['_id'] + print(document) + else: + print("Document not found.") diff --git a/serve/serve/views/__pycache__/user.cpython-311.pyc b/serve/serve/views/__pycache__/user.cpython-311.pyc index ae8895e..3f3d4d6 100644 Binary files a/serve/serve/views/__pycache__/user.cpython-311.pyc and b/serve/serve/views/__pycache__/user.cpython-311.pyc differ diff --git a/serve/serve/views/user.py b/serve/serve/views/user.py index 0d11075..ab9448e 100644 --- a/serve/serve/views/user.py +++ b/serve/serve/views/user.py @@ -1,17 +1,49 @@ from django.shortcuts import render, HttpResponse from serve.models.user import UserModel +from django.http import JsonResponse import json from django.urls import path +from serve.utils.connectdb import connectdb +from bson.objectid import ObjectId + +collection = connectdb('user_model') def createUser(request): print(request.method) data = json.loads(request.body) print(data.get('name')) - UserModel.objects.create(username='154782456', password='123456') + UserModel.objects.create(username='154782456', password='123456', subjects=[ + { + 'subjectName': "语文", + 'subjectScore': 90 + }] + ) return HttpResponse("插入成功") +def deleteUser(request): + result = UserModel.objects.filter(id="ly").first().delete() + print(result) + return HttpResponse('删除成功') + + +def updateUser(request): + result = UserModel.objects.filter(id='1').first().update(username="ly") + return HttpResponse(result) + + +def getUser(request): + # user = UserModel.objects.get(id='660195d50d5cb377410134f7') + user = collection.find_one({'_id': ObjectId('660195d50d5cb377410134f7')}) + user['_id'] = str(user['_id']) + # 返回 JSON 响应 + return JsonResponse(user) + + user_url = [ path('user/create', createUser), + path('user/delete', deleteUser), + path('user/update', updateUser), + path('user/get', getUser), ]