一、安装Django

  本文这里直接是在Pycharm上安装的django框架, 在终端上,执行如下命令,安装django:

pip install django

  安装成功后,会有Successfully installed字样输出,如下所示:

python如何调用dll handle_配置文件


  然后可以在pycharm里面写如下代码,测试并查看django的版本,如下:

import django
version = django.get_version()
print(version)

  这里我在print这行打个断点,可以看到version的值,如下所示:

python如何调用dll handle_Restful_02


  这样django就已经安装完成。


二、创建简单项目

  在安装完成后,Python的安装目录Scripts中就有django-admin.exe这个程序,创建项目就要用到这个程序。
  这里在控制台中打开(可以是cmd控制台,也可以是pycharm控制台,本文就在电脑控制台执行),切换到项目对应的目录,例如创建名字为testdjango的程序,命令如下所示:

django-admin.exe startproject testdjango

  执行完成后,在该目录中就已经创建了一个文件夹了,在pycharm中打开如下所示:

  这里先不改任何代码,直接运行,注意这里要修改一下运行参数,默认参数是不行的,如下配置:

python如何调用dll handle_配置文件_03


  运行起来之后,在网页中访问如下网址:

127.0.0.1:8000

  会看到如下界面,表示django项目创建成功:

python如何调用dll handle_配置文件_04



三、创建自己APP

  cd到testdjango目录中,执行下面代码,这里创建又给testapp的目录:

python manage.py startapp testapp

  结果如下所示:

python如何调用dll handle_django_05


  这里要使用testapp,首先要在testapp目录中创建一个view目录,然后将tespapp下的views.py复制进去,里面添加一个函数,简单写句话在里面,如下所示:

def test_func(request):
    if request.method == 'GET':
        return 'OK'
    return 'Error'

  然后创建一个urls.py,输入如下代码:

from django.conf.urls import url
from testdjango.testapp.view import views
urlpatterns = [
    url('test/', views.test_func),
]

  然后需要在testdjango目录中的urls.py中添加一行路由,如下所示:

urlpatterns = [
    path('admin/', admin.site.urls),		# 原有的
    url('^testapp/',include(urls))			# 新加的
]

  运行起来,在testapp.view.views.py函数里面打个断点,网页里面测试访问,访问如下网址:

http://127.0.0.1:8000/testapp/test/

  然后就进入断点,如下,表示该接口已经跑通了,后续就是对接口的处理和值返回了:

python如何调用dll handle_json_06


  这里生成自己的app的第一个接口就算跑通了,内部可以拿到请求消息体做处理,并返回相应的网页或者json等消息,这里不赘述。


四、其他说明

  ①生成的代码中有很多事空白没有代码的,这个阔以直接删除掉。
  ②其实testdjango里面的urls.py是一级url路由,testapp里面试二级url路由。
  ③settings.py里面是全局配置文件,可以注释掉关于db.sqlite3相关代码,避免生成db文件。
  ④testdjango里面urls.py原有的那个路由可以删除掉。



五、最后

  放一个稍微完整点的代码:

import json
from django.http import JsonResponse, HttpResponseNotAllowed, HttpResponse
from django.views.decorators.csrf import csrf_exempt

@csrf_exempt
def run(request):
    if request.content_type != 'application/json':
        return HttpResponse('only support json data', status=500)
    if request.method == 'POST':
        try:
            req_data = json.loads(request.body)

            # 这里可以执行自己的逻辑代码

            rep_data = {'state': 0, 'msg': "ok"}
            return JsonResponse(data=rep_data, status=200)
        except Exception as why:
            rep_data = {'state': 1, 'msg': "error"}
            return JsonResponse(data=rep_data, status=200)
    return HttpResponseNotAllowed(permitted_methods=['POST'])