【玩转全栈】----Django基本配置和介绍

【玩转全栈】----Django基本配置和介绍🚀

Django是一个功能强大的PythonWeb框架,它遵循"Don'tRepeatYourself"(DRY)原则,让开发者能够快速构建高质量的Web应用。让我们一起来探索Django的基本配置和核心概念吧!💡

🛠️Django安装与项目创建

首先,确保你已经安装了Python(推荐3.6+版本),然后通过pip安装Django:

```python
pipinstalldjango
```

创建新项目:

```python
django-adminstartprojectmyproject
```

这会在当前目录下生成一个名为`myproject`的文件夹,包含基本的项目结构。

📁Django项目结构

一个典型的Django项目结构如下:

```
myproject/
manage.py项目管理脚本
myproject/
init.py
settings.py项目配置
urls.pyURL路由
wsgi.pyWSGI配置
```

⚙️基本配置

`settings.py`是Django的核心配置文件,以下是一些关键配置项:

```python
myproject/settings.py

INSTALLED_APPS= 'django.contrib.admin',管理后台 'django.contrib.auth',认证系统 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles',静态文件处理 'myapp',你的自定义应用

DATABASES={
'default':{
'ENGINE':'django.db.backends.sqlite3',
'NAME':os.path.join(BASE_DIR,'db.sqlite3'),
}
}

STATIC_URL='/static/'静态文件URL前缀
```

🚦URL路由

Django使用URLconf模块来处理URL路由。在`urls.py`中:

```python
myproject/urls.py
fromdjango.contribimportadmin
fromdjango.urlsimportpath
frommyappimportviews

urlpatterns= path('admin/',admin.site.urls), path('hello/',views.hello_world),
```

🏗️创建应用

Django项目由多个应用组成,创建新应用:

```python
pythonmanage.pystartappmyapp
```

应用结构:

```
myapp/
migrations/数据库迁移文件
init.py
admin.py管理后台配置
apps.py应用配置
models.py数据模型
tests.py测试
views.py视图函数
```

🌟简单视图示例

在`views.py`中创建一个简单的视图:

```python
myapp/views.py
fromdjango.httpimportHttpResponse

defhello_world(request):
returnHttpResponse("Hello,Django!🎉")
```

🏃运行开发服务器

启动开发服务器:

```python
pythonmanage.pyrunserver
```

访问`http://127.0.0.1:8000/hello/\`就能看到你的第一个Django页面啦!✨

Django的强大之处在于它的"全栈"特性-从ORM到模板系统,从表单处理到用户认证,应有尽有。掌握这些基础知识后,你就可以开始构建更复杂的Web应用了!💪

Happycoding!🎯

相关推荐
IT_陈寒13 分钟前
Java开发实战:从入门到精通
前端·人工智能·后端
jktantan25 分钟前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·后端·算法·spring cloud·系统架构
独泪了无痕9 小时前
探索Pinyin4j-Java中的拼音转换利器
java·后端
码事漫谈10 小时前
从 Coze 居然要下线了说起
后端
道尔柯南10 小时前
C++ string 类详解:从常用接口到深拷贝,彻底掌握字符串处理
android·java·c++
想不到一个好的ID10 小时前
智能体开发
后端
皮皮林55110 小时前
为什么数据库连接池不采用 IO 多路复用?
后端
kingx311 小时前
Bugku 3122 谷歌小恐龙题解:纯离线逆向 Vault 的 AES-GCM 加密资源(附 Python 解密器)
java·逆向·ctf·bugku·aes-gcm
DevOpenClub14 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
IT_陈寒14 小时前
Redis雪崩把我坑惨了,这是5年经验的教训
前端·人工智能·后端