(二) Django-Hello World

Django

前言

当前环境: Ubuntu18 + Python3.6.5 + Django2.1.1

Django官网

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.

上一节我们创建了mysiteDjango项目以及scetc应用(用来处理业务逻辑), 并成功运行了这个Django Server.

这一节, 我们来让我们的Server输出Hello World.


Django-Hello World

Django-view.py

修改scetc应用中的views.py(视图文件):

"""
	./scetc/views.py
"""
from django.shortcuts import render
from django.http import HttpResponse	# 用于返回http response.


# request为请求信息即client发送的请求信息.
def index(request):
    return HttpResponse("Hello World!")

# Create your views here.

修改完成后, 还需要将其映射到mysite项目的urls.py.

Django-urls.py

view.py中的对象映射到urls.py:

"""mysite URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/2.1/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from scetc import views		# 修改处.

urlpatterns = [
    path('index/', views.index),		# 修改处.
    path('admin/', admin.site.urls),
]

然后我们使用python3 manage.py runserver "IP:PORT"来运行Server.

我们在Browser来访问http://IP:PORT来访问我们的Server.

发现报错了:

在这里插入图片描述

为什么呢?因为修改urls.py文件.

  • path('index/', views.index),: 表示访问http://IP:PORT/index/时调用views.index对象来处理请求.

    • 这也是为什么我们请求首页会报错的原因.
  • path('', views.index),: 表示访问首页http://IP:PORT时调用views.index对象来处理请求.

    • urls规定了访问路径时应调用哪个对象来处理请求.

我们来访问下http://IP:PORT/index/:

在这里插入图片描述


<think>嗯,用户遇到了一个错误,执行django-admin startproject HelloWorld时出现语法错误。让我仔细看看错误信息。错误提示显示在文件"<stdin>"的第1行,django-admin startproject HelloWorld附近有SyntaxError,并且箭头指向startproject前面的位置,也就是django-admin后面。这说明Python解释器认为这里的语法有问题。 首先,用户可能在Python交互式解释器中输入了这个命令。因为错误信息显示的是"<stdin>",这通常意味着代码是在Python的交互式shell里执行的,而不是在系统的命令行终端。django-admin是一个需要在操作系统的命令行中运行的工具,而不是在Python的交互式环境中执行的命令。 用户可能混淆了命令行和Python解释器的使用环境。在命令行中,比如Windows的CMD或PowerShell,或者Linux/macOS的终端,用户应该直接输入django-admin startproject HelloWorld,而不需要进入Python环境。如果在Python的>>>提示符下输入,会被当作Python代码执行,而django-admin在这里会被视为一个变量或函数,导致语法错误。 另外,用户可能没有正确安装Django,或者安装后django-admin没有被添加到系统环境变量中。需要检查Django的安装情况,使用pip list查看是否安装了Django,或者尝试在命令行直接输入django-admin看是否有反应。如果提示找不到命令,可能需要重新安装Django,或者将Python的Scripts目录添加到环境变量中。 总结来说,用户的主要问题是在错误的环境中执行了命令。应该指导他们退出Python交互式界面,回到系统终端,并正确运行命令。同时,确认Django是否正确安装,环境变量是否配置正确。如果用户是新手,可能需要一步步引导他们如何打开命令行,检查安装,以及执行正确的命令。</think>你遇到的错误是因为在Python交互式解释器中直接输入了Django命令行指令。`django-admin`是一个需要通过操作系统终端(如CMD、PowerShell、Bash等)执行的命令,而不是在Python的交互式环境中运行。以下是分步说明: --- ### **错误原因** 1. **执行环境错误**:你在Python的`>>>`交互式环境中输入了系统命令。 2. **命令格式混淆**:`django-admin`是Django提供的命令行工具,需在终端直接运行。 --- ### **正确操作步骤** 1. **退出Python交互式环境** - 输入 `exit()` 或按 `Ctrl+Z` (Windows) / `Ctrl+D` (Linux/macOS) 退出Python环境。 2. **打开系统终端** - Windows: 使用CMD或PowerShell - Linux/macOS: 使用Terminal或Bash 3. **执行Django命令** ```bash django-admin startproject HelloWorld ``` 4. **验证Django安装** - 如果提示`django-admin`不存在,可能是Django未正确安装。使用以下命令安装: ```bash pip install django ``` - 安装后检查版本: ```bash django-admin --version ``` --- ### **示例流程** ```bash # 1. 安装Django(如未安装) pip install django # 2. 创建项目 django-admin startproject HelloWorld # 3. 进入项目目录 cd HelloWorld # 4. 运行开发服务器 python manage.py runserver ``` --- ### **常见问题排查** 1. **环境变量问题**: - 确保Python的`Scripts`目录(如`C:\PythonXX\Scripts`)已添加到系统环境变量。 2. **虚拟环境干扰**: - 如果使用虚拟环境(如venv),需先激活环境再执行命令。 3. **操作系统差异**: - Linux/macOS可能需要使用`python3`和`pip3`代替`python`和`pip`。 --- ### **命令作用** - `django-admin startproject HelloWorld` 会生成一个名为`HelloWorld`的Django项目目录,包含: ``` HelloWorld/ ├── manage.py # 项目管理脚本 └── HelloWorld/ ├── __init__.py ├── settings.py # 项目配置 ├── urls.py # URL路由 └── wsgi.py # 部署接口 ``` 如果仍有问题,请提供操作系统和Python/Django版本信息,以便进一步诊断!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值