一、创建后端步骤
1)创建Django工程
2)在终端运行命令python manage.py startapp market(market是package包,可以任意命名)
3)在setting.py文件中,在INSTALLED_APPS中添加新建的文件名market,如:
INSTALLED_APPS =['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','market',//添加新建的文件名
]
4)右键工程,创建新的Python package文件apps,将文件market文件移到apps中
5)在setting.py文件中,添加代码:sys.path.insert(0, os.path.join(BASE_DIR, 'apps')) (别忘记import sys),如:
importos,sys#Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve(strict=True).parent.parent
sys.path.insert(0, os.path.join(BASE_DIR,'apps'))
6)创建ORM数据库:
1、在models.py中创建类,如下(注意:类要继承models.Model):
from django.db import models
# Create your models here.
# 物品
class Goods(models.Model):
num = models.IntegerField(db_column="Num", primary_key=True, null=False) # 编号,不允许为空,主键
name = models.CharField(db_column="Name", max_length=100, null=False) # 物品名称,最长100个字符,不允许为空
image = models.CharField(db_column="Image", max_length=200, null=False) # 物品图片
userNum = models.ForeignKey("user", to_field="num", on_delete=models.CASCADE) # 物品拥有者用户编号
price = models.FloatField(db_column='Price', null=False) # 物品价格
count = models.IntegerField(db_column="Count", null=False) # 数量
addDate = models.DateField(db_column="AddDate", null=False) # 物品添加日期
kind = models.CharField(db_column="Kind", max_length=50, null=False) # 物品种类
introduction = models.CharField(db_column="Introduction", max_length=300, null=False) # 物品介绍
# 在默认情况下,生成的表名:App_class, 如果要自定义 ,需要使用Class Meta来自定义
class Meta:
managed = True
db_table = "goods"
# 用户
class User(models.Model):
num = models.IntegerField(db_column="UNum", primary_key=True, null=False) # 用户编号,不允许为空,主键
name = models.CharField(db_column="UName", max_length=100, null=False) # 用户昵称,最长100个字符,不允许为空
telNum = models.CharField(db_column="Mobile", max_length=100, null=False) # 手机号码
gender_choices = (('男', '男'), ('女', '女'))
gender = models.CharField(db_column="Gender", max_length=100, choices=gender_choices) # 性别
address = models.CharField(db_column="Address", max_length=200, null=False) # 地址
class Meta:
managed = True
db_table = "user"
# 用户收藏的物品
class Collection(models.Model):
unum = models.ForeignKey("user", to_field="num", on_delete=models.CASCADE) # 用户编号
snum = models.ForeignKey("goods", to_field="num", on_delete=models.CASCADE) # 物品编号
class Meta:
managed = True
unique_together = (("unum", "snum"),)
db_table = "collection"
2、在数据库中新建一个数据库,如Market
3、在setting.py中配置数据库,如下:
DATABASES ={#'default': {
#'ENGINE': 'django.db.backends.sqlite3',
#'NAME': BASE_DIR / 'db.sqlite3',
#}
'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'market','USER': 'root','PASSWORD': '','HOST': '127.0.0.1','PORT': '3306',
}
}
4、在market的__init__.py中,添加如下代码:
importpymysql
pymysql.version_info= (1, 4, 6, 'final', 0) #change mysqlclient version
pymysql.install_as_MySQLdb()
5、在终端依次运行如下代码:
python manage.py makemigrations
python manage.py migrate
二、创建前端(使用VS code)
1)首先在vs code中下载两个插件:
①Vue snippets(Vue智能提示)
②liver server(相当于本地web服务器)
2)使用CDN引入Vue模块,如:
3)引入Element UI样式,如:
4)创建html,css,js文件:
html代码:
DocumentHeader
default-active="2"
class="el-menu-vertical-demo"
background-color="#545c64"
text-color="#fff"
active-text-color="#ffd04b">
导航二
导航三
导航四
Main
Footer