Django访问静态资源及连接mysql数据库(反向生成表)

---Django项目中一般不允许存在静态资源,我们为了演示。特做了一个小demo

---demo结构为:

其中static为静态资源存放的目录,goods为新生成的application(点击Tools中的run manager.py,输入startapp goods)

-----Django访问静态资源 首先我们在static中建一个goods.html

---settings.py中设置静态资源的路径

设置静态资源的路径
STATICFILES_DIRS=(
    os.path.join(BASE_DIR, 'static'),
)
STATIC_URL = '/static/'

---urls.py中进行设置访问静态资源的地址栏解析
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
    url(r'^admin/', admin.site.urls),
]+static(settings.STATIC_URL, document_root=settings.STATICFILES_DIRS)

访问http://127.0.0.1:8000/static/goods.html不报错,即证明静态资源访问成功!
一般404,403出错,可能出现的原因:
1.settings.py中的STATICFILES_DIRS写错,必须为这个名字
2.settings.py中的STATICFILES_DIRS中的
 "os.path.join(BASE_DIR, 'static'),",少写了一个","


----------Django连接mysql数据库及反向生成表
----settings.py中进行设置
INSTALLED_APPS中引入goods模块

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'goods',
]

配置mysql数据库:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',#数据库引擎,类似于驱动
        'NAME':"shopsys_db",                   #数据库名称
        'HOST':"localhost",                    #连接的数据库ip
        'USER':"root",                          #用户名
        'PASSWORD':"root",                     #密码
        'PORT':"3306",                         #端口,默认3306

    }
}
此时若启动会报错,因为我们需要下载一个mysql的支持
命令为:pip install mysqlclient

---------若连接数据库成功了,我们开始反向生成表
--首先我们在goods模块下的models.py中编写我们数据库表的字段
from django.db import models

# Create your models here.
class Category(models.Model):
    name=models.CharField(max_length=50,null=False,unique=True)#当前节点名称
    parent=models.ForeignKey('self',null=True)#当前节点的父节点id,与id设置外键关系

注意!!Django中认为任何一张表都有id,故默认的有id自增,无需写!

--让我们迁徙下(反向生成表)
点击Tools中的run manager.py,输入
makemigrations goods
sqlmigrate goods 0001
migrate goods

如果不报错,则检查下数据库(表及表中字段是否生成及表的外键关系存在与否)
若数据库存在,则成功!


-------------------ok,下一篇我们来简单的了解django中如何使用easyui


  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值