diff --git a/bluewhale/Pipfile b/backend/Pipfile similarity index 100% rename from bluewhale/Pipfile rename to backend/Pipfile diff --git a/bluewhale/Pipfile.lock b/backend/Pipfile.lock similarity index 100% rename from bluewhale/Pipfile.lock rename to backend/Pipfile.lock diff --git a/bluewhale/blog/__init__.py b/backend/blog/__init__.py similarity index 100% rename from bluewhale/blog/__init__.py rename to backend/blog/__init__.py diff --git a/bluewhale/blog/admin.py b/backend/blog/admin.py similarity index 100% rename from bluewhale/blog/admin.py rename to backend/blog/admin.py diff --git a/bluewhale/blog/apps.py b/backend/blog/apps.py similarity index 100% rename from bluewhale/blog/apps.py rename to backend/blog/apps.py diff --git a/bluewhale/blog/migrations/0001_initial.py b/backend/blog/migrations/0001_initial.py similarity index 100% rename from bluewhale/blog/migrations/0001_initial.py rename to backend/blog/migrations/0001_initial.py diff --git a/bluewhale/blog/migrations/__init__.py b/backend/blog/migrations/__init__.py similarity index 100% rename from bluewhale/blog/migrations/__init__.py rename to backend/blog/migrations/__init__.py diff --git a/bluewhale/blog/models.py b/backend/blog/models.py similarity index 100% rename from bluewhale/blog/models.py rename to backend/blog/models.py diff --git a/bluewhale/blog/serializers.py b/backend/blog/serializers.py similarity index 100% rename from bluewhale/blog/serializers.py rename to backend/blog/serializers.py diff --git a/bluewhale/blog/tests.py b/backend/blog/tests.py similarity index 100% rename from bluewhale/blog/tests.py rename to backend/blog/tests.py diff --git a/bluewhale/blog/views.py b/backend/blog/views.py similarity index 100% rename from bluewhale/blog/views.py rename to backend/blog/views.py diff --git a/bluewhale/bluewhale/__init__.py b/backend/bluewhale/__init__.py similarity index 100% rename from bluewhale/bluewhale/__init__.py rename to backend/bluewhale/__init__.py diff --git a/bluewhale/bluewhale/asgi.py b/backend/bluewhale/asgi.py similarity index 100% rename from bluewhale/bluewhale/asgi.py rename to backend/bluewhale/asgi.py diff --git a/bluewhale/bluewhale/settings.py b/backend/bluewhale/settings.py similarity index 100% rename from bluewhale/bluewhale/settings.py rename to backend/bluewhale/settings.py diff --git a/bluewhale/bluewhale/urls.py b/backend/bluewhale/urls.py similarity index 100% rename from bluewhale/bluewhale/urls.py rename to backend/bluewhale/urls.py diff --git a/bluewhale/bluewhale/wsgi.py b/backend/bluewhale/wsgi.py similarity index 100% rename from bluewhale/bluewhale/wsgi.py rename to backend/bluewhale/wsgi.py diff --git a/bluewhale/common/__init__.py b/backend/common/__init__.py similarity index 100% rename from bluewhale/common/__init__.py rename to backend/common/__init__.py diff --git a/bluewhale/common/utils.py b/backend/common/utils.py similarity index 100% rename from bluewhale/common/utils.py rename to backend/common/utils.py diff --git a/bluewhale/core/__init__.py b/backend/core/__init__.py similarity index 100% rename from bluewhale/core/__init__.py rename to backend/core/__init__.py diff --git a/bluewhale/core/admin.py b/backend/core/admin.py similarity index 100% rename from bluewhale/core/admin.py rename to backend/core/admin.py diff --git a/bluewhale/core/apps.py b/backend/core/apps.py similarity index 100% rename from bluewhale/core/apps.py rename to backend/core/apps.py diff --git a/bluewhale/core/backends.py b/backend/core/backends.py similarity index 100% rename from bluewhale/core/backends.py rename to backend/core/backends.py diff --git a/bluewhale/core/generics.py b/backend/core/generics.py similarity index 100% rename from bluewhale/core/generics.py rename to backend/core/generics.py diff --git a/bluewhale/core/managers.py b/backend/core/managers.py similarity index 100% rename from bluewhale/core/managers.py rename to backend/core/managers.py diff --git a/bluewhale/core/migrations/0001_initial.py b/backend/core/migrations/0001_initial.py similarity index 100% rename from bluewhale/core/migrations/0001_initial.py rename to backend/core/migrations/0001_initial.py diff --git a/bluewhale/core/migrations/0002_auto_20210203_1024.py b/backend/core/migrations/0002_auto_20210203_1024.py similarity index 100% rename from bluewhale/core/migrations/0002_auto_20210203_1024.py rename to backend/core/migrations/0002_auto_20210203_1024.py diff --git a/bluewhale/core/migrations/__init__.py b/backend/core/migrations/__init__.py similarity index 100% rename from bluewhale/core/migrations/__init__.py rename to backend/core/migrations/__init__.py diff --git a/bluewhale/core/models.py b/backend/core/models.py similarity index 100% rename from bluewhale/core/models.py rename to backend/core/models.py diff --git a/bluewhale/core/permissions.py b/backend/core/permissions.py similarity index 100% rename from bluewhale/core/permissions.py rename to backend/core/permissions.py diff --git a/bluewhale/core/serializers.py b/backend/core/serializers.py similarity index 100% rename from bluewhale/core/serializers.py rename to backend/core/serializers.py diff --git a/bluewhale/core/tests.py b/backend/core/tests.py similarity index 100% rename from bluewhale/core/tests.py rename to backend/core/tests.py diff --git a/bluewhale/core/views.py b/backend/core/views.py similarity index 100% rename from bluewhale/core/views.py rename to backend/core/views.py diff --git a/bluewhale/core/views_auth.py b/backend/core/views_auth.py similarity index 100% rename from bluewhale/core/views_auth.py rename to backend/core/views_auth.py diff --git a/bluewhale/core/viewsets.py b/backend/core/viewsets.py similarity index 100% rename from bluewhale/core/viewsets.py rename to backend/core/viewsets.py diff --git a/bluewhale/manage.py b/backend/manage.py similarity index 100% rename from bluewhale/manage.py rename to backend/manage.py diff --git a/task00.md b/task00.md index 1384685..2bfaa55 100644 --- a/task00.md +++ b/task00.md @@ -185,7 +185,7 @@ FLUSH PRIVILEGES; * 安装Python3.8:如已有Python3.8环境,可跳过此步骤 * 安装pipenv: `pip install pipenv` * 安装Python依赖包: - - 进入clone下来的项目目录,进入子目录: `cd bluewhale` + - 进入clone下来的项目目录,进入子目录: `cd backend` - 同步依赖包: `pipenv sync` windows cmd命令行执行同步效果: diff --git a/task01.md b/task01.md index 54dc019..6efe768 100644 --- a/task01.md +++ b/task01.md @@ -4,8 +4,8 @@ # 后端目录结构 -后端使用Django开发,子目录为`bluewhale`。`bluewhale`是Django web项目名称, -通过命令`django-admin startproject bluewhale`创建,项目由一个或多个应用组成。详细的目录结构如下: +后端使用Django开发,子目录为`backend`。该目录通过命令`django-admin startproject bluewhale`创建, +然后重命名为`backend`,Django项目由一个或多个应用组成。详细的目录结构如下: ```shell ├── Pipfile diff --git a/task04.md b/task04.md index 526ec0d..97f4cbb 100644 --- a/task04.md +++ b/task04.md @@ -10,7 +10,7 @@ 在[task01](./task01.md)课程中,你已熟悉`User`这个Model类。按照需求,需要扩展用户相关属性。 -如期望增加学校字段`school`,可以在`User`该类中添加相关属性(文件路径`bluewhale/core/models.py`): +如期望增加学校字段`school`,可以在`User`该类中添加相关属性(文件路径`backend/core/models.py`): ```python # 已定义属性 @@ -67,7 +67,7 @@ } ``` -原因是我们还需处理序列化相关的代码,增加这部分的序列化配置。文件路径为`bluewhale/core/serializers.py`, +原因是我们还需处理序列化相关的代码,增加这部分的序列化配置。文件路径为`backend/core/serializers.py`, 类为`UserSerializer`。通过定义该类中`Meta`类的`fields`属性,我们可以添加我们需要序列化的字段。 添加`school`项,并刷新页面[http://127.0.0.1:8000/api/v1/me](http://127.0.0.1:8000/api/v1/me), @@ -85,7 +85,7 @@ * 修改 - `put -> update` & `patch -> partial_update` * 删除 - `delete -> destroy` -如果需要对特定的接口做特殊的处理,可以通过`Override`实际处理函数进行处理,具体示例可以参考`bluewhale/blog/views.py` +如果需要对特定的接口做特殊的处理,可以通过`Override`实际处理函数进行处理,具体示例可以参考`backend/blog/views.py` 中的处理(该示例中使用非自增的id作为主键,而是使用生成uuid的方式作为主键): ```python @@ -119,7 +119,7 @@ class ArticleDetailView(BasicRetrieveUpdateDestroyAPIView): queryset = Article.objects.all() ``` -最后在`bluewhale/bluewhale/urls.py`中,对所要的接口路径进行URL与APIView的映射,如: +最后在`backend/bluewhale/urls.py`中,对所要的接口路径进行URL与APIView的映射,如: ```python path(f'{api_prefix}/articles', ArticleListCreateView.as_view(), name='articles'), @@ -141,11 +141,12 @@ export USER=team00 # 替换成助教提供的用户名 export HOST=127.0.0.1 # 替换成助教提供的服务器地址 rsync -avzh --delete --exclude=*.pyc --exclude=.venv --exclude=.idea --exclude=.env \ --exclude=.git --exclude=__pycache__ \ - bluewhale $USER@$HOST: + backend $USER@$HOST: ``` -该命令将后端代码目录同步至远程服务器中。登录到远程服务器,在用户主目录下将看到`bluewhale`文件夹, -其中为后端代码。参考课程[task00](./task00.md)中环境搭建-后端服务的部分,初始化后端项目db及用户。 +该命令将后端代码目录同步至远程服务器中。登录到远程服务器,在用户主目录下将看到`backend`文件夹, +其中为后端代码。参考课程[task00](./task00.md)中**环境搭建**-**后端服务**的部分,初始化后端项目db及用户 +(远程服务器中已经安装了Python3.8环境,MySQL数据库,并初始化了MySQL的用户,相关步骤可以略过) 最终运行时,运行下列命令(PORT已在环境变量中指定):