使用Django开发名为墨韵逸物的MySQL数据库接口的简单指南,以及微信小程序连接和展示的方法

1,155 阅读5分钟

1. 准备工作

1.1 安装Python

请访问 Python官网 下载并安装Python。请选择适合您操作系统的版本。安装时,请确保勾选"Add Python to PATH"选项。

1.2 安装pip

pip是Python的包管理工具。在大多数情况下,Python安装程序会自动安装pip。您可以通过在命令行输入以下命令检查pip是否已安装:

pip --version

如果未安装,请参考 pip官方文档 进行安装。

2. 设置虚拟环境

2.1 安装虚拟环境工具

在命令行中输入以下命令安装虚拟环境工具:

pip install virtualenv

2.2 创建虚拟环境

在命令行中输入以下命令创建一个名为"myenv"的虚拟环境:

virtualenv myenv

2.3 激活虚拟环境

根据您的操作系统,使用以下命令激活虚拟环境:

  • Windows:
myenv\Scripts\activate
  • macOS/Linux:
source myenv/bin/activate

激活后,命令行提示符应显示虚拟环境的名称。

3. 安装Django和MySQL依赖

在虚拟环境中安装Django和MySQL依赖:

pip install django mysqlclient

4. 创建Django项目

在命令行中输入以下命令创建一个名为“墨韵逸物”的Django项目:

django-admin startproject my_project

进入项目文件夹:

cd my_project

创建新应用 使用以下命令创建新应用(将`myapp`替换为您喜欢的应用名称):

python manage.py startapp myapp 

这将在项目目录下创建一个名为`myapp`的文件夹,其中包含一些初始文件,如`models.py`、`views.py`等。

5. 配置数据库

5.1 设置MySQL数据库

在项目的settings.py中配置MySQL数据库:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'your_database_name',
        'USER': 'your_database_user',
        'PASSWORD': 'your_database_password',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

将"your_database_name"、"your_database_user"、"your_database_password"替换为您的数据库名称、用户名和密码。

5.2 创建数据库模型

在项目的models.py文件中创建墨韵逸物的数据模型:

from django.db import models

class Item(models.Model):
    title = models.CharField(max_length100)
    description = models.TextField()
    image = models.ImageField(upload_to='images/')
    price = models.DecimalField(max_digits=10, decimal_places=2)

    def __str__(self):
        return self.title

如果修改了数据模型,要进行数据迁移(请直接复制到终端中,不要分开)

    python manage.py makemigrations
    python manage.py migrate

5.3 运行服务

  1. 运行以下命令来启动 Python shell:
    python manage.py shell

2. 在运行服务时,我们先注册一个用户,在终端输入

        from django.contrib.auth.models import User
            user = User.objects.create_user(username='root', password='your_password', email='your_email@qq.com')
            user.save()

请将 'your_password' 替换为您想要设置的密码,并将 'your_email@qq.com' 替换为实际的电子邮件地址。

3.查看我们注册的用户

from django.contrib.auth.models import User
for user in User.objects.all():
    print(user.username, flush=True)

4.使用以下命令运行开发服务器:

python manage.py runserver

5.如果您仍然无法在 Django admin 页面上使用新密码登录,可以尝试以下方法:

  1. 确保您使用的是正确的登录网址。Django admin 页面通常位于 http://127.0.0.1:8000/admin/。如果您的项目中 admin 页面的 URL 有所不同,请使用适当的 URL。
  2. 清除浏览器缓存和Cookie。浏览器可能会保存旧的登录信息,导致无法使用新密码登录。尝试清除浏览器缓存和 Cookie,然后重新登录。
  3. 重新创建超级用户。如果前两个方法都不奏效,您可以尝试删除当前的超级用户并创建一个新的超级用户。要执行此操作,请首先确保您已经退出 Python shell 并位于项目根目录下。然后,运行以下命令:
python manage.py shell
  1. 在 Python shell 中,执行以下命令以删除当前的超级用户(假设用户名为 'root'):
from django.contrib.auth.models import User
    user = User.objects.get(username='root')
    user.delete()
  1. 退出 Python shell(使用 exit()Ctrl + Z / Ctrl + D),然后在项目根目录下运行以下命令以创建一个新的超级用户:
python manage.py createsuperuser

按照提示输入用户名、电子邮件地址和密码。创建新的超级用户后,尝试使用新的凭据登录 Django admin 页面。

6. 创建API接口

6.1 安装Django REST Framework

在虚拟环境中安装Django REST框架:

pip install djangorestframework

6.2 配置REST框架

settings.py中添加rest_frameworkINSTALLED_APPS

INSTALLED_APPS = [
    # ...
    'rest_framework',
]

6.3 创建序列化器

在项目中创建一个名为serializers.py的文件,然后编写一个序列化器:

from rest_framework import serializers
from .models import Item

class ItemSerializer(serializers.ModelSerializer):
    class Meta:
        model = Item
        fields = '__all__'

6.4 创建视图

在项目中创建一个名为views.py的文件,然后编写一个视图:

from rest_framework import generics
from .models import Item
from .serializers import ItemSerializer

class ItemList(generics.ListCreateAPIView):
    queryset = Item.objects.all()
    serializer_class = ItemSerializer

6.5 配置URL

在项目中创建一个名为urls.py的文件,然后配置URL:

from django.urls import path
from .views import ItemList

urlpatterns = [
    path('items/', ItemList.as_view(), name='item-list'),
]

7. 微信小程序连接和展示

7.1 安装微信开发者工具

下载并安装微信开发者工具

7.2 创建微信小程序

使用微信开发者工具创建一个新的小程序项目。

7.3 获取数据

pages/index/index.js文件中,编写一个方法来获取墨韵逸物数据:

Page({
  data: {
    items: [],
  },
  onLoad: function () {
    this.fetchItems();
  },
  fetchItems: function () {
    var that = this;
    wx.request({
      url: 'http://localhost:8000/items/', // 替换为您的Django服务器地址
      method: 'GET',
      success: function (res) {
        that.setData({
          items: res.data
        });
      },
      fail: function (error) {
        console.log(error);
      },
    });
  },
});

7.4 展示数据

pages/index/index.wxml文件中,使用wx:for循环展示墨韵逸物数据:

<view>
  <view wx:for="{{items}}" wx:key="id">
    <text>{{item.title}}</text>
    <text>{{item.description}}</text>
    <image src="{{item.image}}" />
    <text>{{item.price}}</text>
  </view>
</view>

7.5 运行小程序

在微信开发者工具中运行小程序,查看数据展示结果。

8. 部署Django项目到服务器

为了让微信小程序能够从互联网上访问Django项目,您需要将Django项目部署到一个服务器上。以下是一个简单的部署教程:

8.1 安装Gunicorn

在虚拟环境中安装Gunicorn:

pip install gunicorn

8.2 运行Gunicorn

在项目文件夹中运行Gunicorn:

gunicorn my_project.wsgi:application --bind 0.0.0.0:8000

请确保服务器防火墙允许8000端口的入站连接。

8.3 更新微信小程序请求URL

pages/index/index.js文件中,将请求URL更新为您的服务器地址:

wx.request({
  url: 'http://your_server_ip:8000/items/',
  // ...
});

将"your_server_ip"替换为您的服务器IP地址。

8.4 在微信开发者工具中测试

重新运行微信小程序,查看从服务器获取的墨韵逸物数据。

9. 总结

恭喜您已经完成了使用Django开发名为墨韵逸物的MySQL数据库接口以及微信小程序连接和展示数据的教程!您可以根据需要对Django项目和微信小程序进行进一步的定制和扩展。