前言

当你想走上测试开发之路,用python开发出一个web页面的时候,需要找一个支持python语言的web框架。django框架有丰富的文档和学习资料,也是非常成熟的web开发框架,想学python开发的小伙伴,从django入手是一个不错的选择。本篇写一个简单的“hello world!”页面,开始django之旅~

环境准备:

Python 3.7.0

django

pycharm

环境准备

django的环境安装非常简单,只需用pip安装一个django库就可以了,编辑器选择pycharm



pip install django==



 查看版本号:pip show django

python写的服务怎么被java调用 python代码放在服务器_django

 安装完之后在cmd检查下是否能用

python写的服务怎么被java调用 python代码放在服务器_python_02

 创建项目

先建一个工程,比如我的项目代码想放到D:\Python0811\jango_1205目录下,然后新建一个Django project(即一个Django项目实例需要的设置项集合,包括数据库配置、Django配置和引用程序配置。)

打开命令行,cd到一个你想放置你代码的目录,然后运行一下命令:



django-admin startproject helloworld



python写的服务怎么被java调用 python代码放在服务器_python_03

执行完之后,pycharm中打开jango_1205,就可以看jango_1205工程目录下多了以下层级文件;

 

python写的服务怎么被java调用 python代码放在服务器_python_04

 这些目录和文件的用处是:

最外层的:helloworld:项目的容器,可以随便命名。

:一个让你用各种方式管理Django项目的命令行工具。

helloworld/:一个空文件,告诉Python这个目录应该被认为是一个python包。

helloworld/:Django项目的配置文件。

helloworld/:Django项目的URL声明,就像你网站的“目录”。

helloworld/:作为你的项目的运行在WSGI兼容的Web服务器上的入口。

django-admin

django-admin.exe是一个可执行文件,安装django时候回默认安装到python3\Scripts目录下,相关指令用-h查看

python写的服务怎么被java调用 python代码放在服务器_python写的服务怎么被java调用_05

 启动服务

接下来启动django服务,使用helloworld下的,先cd到D:\Python0811\jango_1205\helloworld目录下,再在命令行输入以下指令:



python  runserver


 

python写的服务怎么被java调用 python代码放在服务器_django_06

Starting development server at http://:8000/,复制地址在浏览器打开;

python写的服务怎么被java调用 python代码放在服务器_服务器_07

django服务默认在8000端口启动,如果想换个端口,可以输入以下指令;



python  runserver 8080



  如果一个局域网另外一台电脑也需要能访问,可以监听所有ip:



python  runserver 0.0.0.0:8000



 访问的时候,用电脑ip代替; 

用于开发的服务器在需要的情况下会对每一次的访问请求重写载入一遍python代码。所以你不需要为了让修改的代码生效而频繁的重新启动服务器。然而,一些动作,比如添加新文件,将不会触发自动重新加载,这时你得自己手动重启服务器。

视图和URL配置

在先前创建的helloworld/helloworld目录新建一个文件,并输入代码



#helloworld/helloworld/
from django.http import HttpResponse
def index(request):
    return HttpResponse("hello world! come on")



 绑定URL与视图函数。打开文件,删除原来代码,将以下代码复制粘贴到文件中 



#helloworld/helloworld/
from django.conf.urls import url
from . import view
urlpatterns=[
    url(r'^$',),
]



python写的服务怎么被java调用 python代码放在服务器_python_08

 url函数

url()可以接收四个参数,分别是两个必选参数:regex、view和两个可选参数:kwargs、name。



def url(regex, view, kwargs=None, name=None):
    return re_path(regex, view, kwargs, name)



  •  regex:正则表达式,与之匹配的URL会执行对应的第二个参数view。
  • view:用于执行与正则表达式匹配的URL请求。
  • kwargs:视图使用的字典类型的参数。
  • name:用来反向获取URL。

多个url设置

urlpatterns里面url(r'^$',)这项是打开首页http://:8000,平常网站会有多个页面,如果想加个页面地址如:hui打开另外一个页面。

加个函数



#helloworld/helloworld/
from django.http import HttpResponse
def index(request):
    return HttpResponse("hello world! come on")
def hui(request):
    return HttpResponse("come on hui")



 加个配置



#helloworld/helloworld/
from django.conf.urls import url
from . import view
urlpatterns=[
    url('^$',),
    url('^hui$',),
]



python写的服务怎么被java调用 python代码放在服务器_python_09

 

python写的服务怎么被java调用 python代码放在服务器_django_10

 这样在浏览器上输入地址:http://:8080/,打开页面出现:hello world! come on

在浏览器输入地址:http://:8080/hui,打开页面出现: come on hui