• 使用djiango 创建网站


       如果发现用户登录异常等情况请不要惊慌,换个浏览器就好了,谷歌有这个问题,也困扰我很久。

      如果搭建过程,发现新建topic异常等现象,把不要惊慌,可能是你没有进行数据重新清理,请彻底格式化数据库就好了。

    1.这不是一个容易的事,如果你之前并没有做过。

    2.我这是基于pycharm

    admin 是用户主页,admin  不是必须的,admin中可以注册你的模型(数据库模型)

     这个地方添加你的app名字  

    templates模板路径地址

    接下来需要创建数据库  

     python manage.py migrate

    创建超级用户

    python manage.py createsuperuser

    用户名和密码必须要输入,密码必须包含8个字符

    每次添加新的数据库模板我们需要,我们要调整数据库,迁移数据库

    python manage.py makemigrations learning_logs
    
     
    
    python manage.py migrate

    接下来使用shell来调试

    对数据库做了改动如果数据不重要可以直接清空,就不用下面的步骤了
    python manage.py flush
    #首先进行数据关联用户,先启动shell
    python manage.py shell from django.contrib.auth.models import User

    User.objects.all()
    #关联数据
    for user in User.objects.all():
      (table)
      print(user.username,user.id)
    #迁移数据库 以下命令要在shell里面输入(ctr+z)
    python manage.py makemigrations learning_logs
    #选择数据1
    python manage.py migrate

    python manage.py shell
    #下面是一些验证数据
    from learning_logs.models import Topic
    
    topics = Topic.objects.all()
      #主题所有者打印
      print(topic,topic.owner)
    for topic in topics: (table 空格下面的语句不然会出错)   print(topic.id,topic) t=Topic.objects.get(id=1) t.text t.date_added t.entry_set.all()
    这几条似乎很重要,负责后面网站添加数据,数据库貌似会出一些问题

    我大概遇到了这几个问题

    上面的 fields 决定了展现用户form的哪几项,有的如果用户没有创建,django会帮你创建,有时候会导致一些我们不想要的东西,所以只列举你想要创建的对象,不能选择 --all--

    forms是表单,我们可以通过指定  get和post来区别是获取一个空表单还是提交表单

    很庆幸 它工作了

     

    有 id可以填,没有就不要添参数会出错

    通过

    python manage.py startapp users

    可以快速创建一个新的应用程序目录,包含必备的文件树

    如果发现一些无法控制网页错乱,无法跳转等事项请确认是不是浏览器缓存的故障,更换浏览器或者清空cookie可能能够解决。

    File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
    File "<frozen importlib._bootstrap_external>", line 678, in exec_module
    File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
    File "D:python_workmyweblearning_logsmodels.py", line 6, in <module>
    class Topic(models.Model):
    File "D:python_workmyweblearning_logsmodels.py", line 10, in Topic
    owner = models.ForeignKey(User)
    TypeError: __init__() missing 1 required positional argument: 'on_delete'

    owner = models.ForeignKey(User,on_delete=models.DO_NOTHING)#不然说参数错误 关联到一起

    python manage.py shell
    from django.contrib.auth.models import User
    User.objects.all()
    
    for user in User.object.all():
    print(user.username,user.id)
  • 相关阅读:
    面向对象SOLID原则-设计模式-第2篇
    python 设计模式 开篇 第1篇
    区块链 第1篇 什么是区块链 区块链与比特币的关系 区块链的发展历史 应用领域
    HTTP协议六种请求:GET,HEAD,PUT,DELETE,POST
    python垃圾回收机制
    类的MRO属性 C3算法
    Vue第六篇 element-ui 项目管理工具npm webpack 启Vue项目vue-cli
    《EffctiveJava》泛型
    Kafka总结
    Windows 关闭端口号
  • 原文地址:https://www.cnblogs.com/polar-lights/p/9068668.html
Copyright © 2020-2023  润新知