Django图书馆综合项目-学习

2024-05-14 09:36

本文主要是介绍Django图书馆综合项目-学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图书馆项目

  

一 前期准备

安装好所需的环境

我这边用的IDE是VScode 

操作系统是MACOS

 二 先创建一个虚拟环境

python3 -m venv myenvbook 
source myenvbook/bin/activate

三 安装 Django

pip3 install django==4.2

四 创建 Django 项目

django-admin startproject bookproject

五 尝试启动一下

python3 manage.py runserver

看到这个界面表明已经成功启动Djaongo服务器了 

接下来我们将作者,出版社,书籍的APP分别创建一下

django-admin startapp book
django-admin startapp author
django-admin startapp publisher

将新创建的app在settings里注册

 配置一下模版路径 其他暂时不动

from django.db import models# 作者
class Auther(models.Model):first_name = models.CharField(max_length=30)last_name = models.CharField(max_length=30)email = models.EmailField()gender = models.BooleanField(default=True)def __str__(self):return self.first_name + self.last_name
from django.db import models# 出版社
class Publisher(models.Model):name = models.CharField(max_length=30)address = models.CharField(max_length=100)city = models.CharField(max_length=30)state_province = models.CharField(max_length=30)country = models.CharField(max_length=20)website = models.URLField()def __str__(self):return self.name

在创建book的时候需要导入Auther 和 Publisher 

from django.db import models
from auther.models import Auther
from publisher.models import Publisher# 书籍
class book(models.Model):title = models.CharField(max_length=100, verbose_name="书名")publish_date = models.DateField(verbose_name="出版时间")auther = models.ForeignKey(Auther, on_delete=models.PROTECT, verbose_name="作者")publisher = models.ManyToManyField(Publisher, verbose_name="出版社")def __str__(self):return self.title

模型创建好之后执行以下迁移

python3 manage.py makemigrations
python3 manage.py migrate 

查看一下表是否创建成功

 创建一个超级管理员 方便进后台去增加一些数据

python3 manage.py createsuperuser

在每个APP的admin中添加

from django.contrib import adminfrom auther.models import *admin.site.register(Auther)

刷新后可以看到后台管理里就有了

其他2个也一样添加一下

添加一些数据后,创建一些urls 这边用子路由结合命名空间的方式去访问

在主路由先添加

创建一些对应的html页面

将视图函数和路由都配置一下

下一节我们再做一些页面的跳转学习

这篇关于Django图书馆综合项目-学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/988401

相关文章

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

Django序列化中SerializerMethodField的使用详解

《Django序列化中SerializerMethodField的使用详解》:本文主要介绍Django序列化中SerializerMethodField的使用,具有很好的参考价值,希望对大家有所帮... 目录SerializerMethodField的基本概念使用SerializerMethodField的

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Nginx实现高并发的项目实践

《Nginx实现高并发的项目实践》本文主要介绍了Nginx实现高并发的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用最新稳定版本的Nginx合理配置工作进程(workers)配置工作进程连接数(worker_co