{"id":49309,"date":"2024-01-13T04:23:05","date_gmt":"2022-11-04T12:23:04","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/"},"modified":"2024-05-04T18:10:18","modified_gmt":"2024-05-04T10:10:18","slug":"django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/","title":{"rendered":"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4"},"content":{"rendered":"<h1>\u56e0\u4e3a\u5e38\u5e38\u5fd8\u8bb0\u5f00\u59cb\u521b\u5efaDjango\u5e94\u7528\u7a0b\u5e8f\u7684\u6b65\u9aa4\uff0c\u6240\u4ee5\u6211\u51b3\u5b9a\u8bb0\u4e0b\u7b14\u8bb0\u3002<\/h1>\n<h2>\u6982\u8ff0<\/h2>\n<p>\u603b\u7ed3\u521b\u5efaDjango\u5e94\u7528\u7684\u6b65\u9aa4\u3002<br \/>\n\u76ee\u6807\u64cd\u4f5c\u7cfb\u7edf\u4e3aWindows\u3002<br \/>\n\u4f7f\u7528VisualStudioCode\uff08\u4ee5\u4e0b\u7b80\u79f0VSCode\uff09\u3002<br \/>\n\u6309\u7167\u4ee5\u4e0b\u6b65\u9aa4\u8fdb\u884c\u521b\u5efa\u3002<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u521b\u5efa\u865a\u62df\u73af\u5883<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u5b89\u88c5Django<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u521b\u5efa\u9879\u76ee<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u542f\u52a8Django\u670d\u52a1\u5668\u68c0\u67e5<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u521b\u5efa\u5e94\u7528\u7a0b\u5e8f<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u6ce8\u518c\u5e94\u7528\u7a0b\u5e8f<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u5b9e\u73b0\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\u6ce8\u518c\u5e94\u7528\u7a0b\u5e8f\u7684URL<\/ol>\n<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<ol>\u786e\u8ba4\u5e94\u7528\u7a0b\u5e8f\u529f\u80fd<\/ol>\n<p>\u8bf7\u53c2\u8003\u4ee5\u4e0b\u6307\u5357\u4ee5\u521b\u5efa\u73af\u5883\u3002<\/p>\n<p>&nbsp;<\/p>\n<h2>\u521b\u5efa\u865a\u62df\u73af\u5883<\/h2>\n<p>\u521b\u5efaPython\u7684\u865a\u62df\u73af\u5883\u3002<br \/>\n\u9996\u5148\uff0c\u5728\u8d44\u6e90\u7ba1\u7406\u5668\u4e2d\u521b\u5efa\u5de5\u4f5c\u6587\u4ef6\u5939\u3002<br \/>\n\u5047\u8bbe\u5728C\u76d8\u7684ws\u6587\u4ef6\u5939\u4e2d\u521b\u5efa\u4e00\u4e2a\u540d\u4e3asample\u7684\u6587\u4ef6\u5939\u3002<\/p>\n<pre class=\"post-pre\"><code>C:\\ws\\sample\r\n<\/code><\/pre>\n<p>\u4f7f\u7528VSCode\u6253\u5f00sample\u6587\u4ef6\u5939\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/12-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u901a\u8fc7\u70b9\u51fb[\u6587\u4ef6]\uff0d[\u6253\u5f00\u6587\u4ef6\u5939]\u6765\u6253\u5f00sample\u6587\u4ef6\u5939\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/14-0.png\" alt=\"image.png\" \/><\/div>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/15-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u5728[\u7ec8\u7aef]\uff0d[\u65b0\u7ec8\u7aef]\u4e2d\u6253\u5f00\u7ec8\u7aef\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/17-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u5728\u7ec8\u7aef\u4e2d\u8f93\u5165 python -m venv venv\uff0c\u5c06\u521b\u5efa venv \u6587\u4ef6\u5939\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/19-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u5c06\u6837\u672c\u6587\u4ef6\u5939\u8bbe\u4e3a\u5f53\u524d\u6587\u4ef6\u5939\uff0c\u5e76\u6267\u884c.\\venv\\Scripts\\activate\uff0c\u5373\u53ef\u8fdb\u5165\u865a\u62df\u73af\u5883\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">PS C:\\ws\\sample&gt;<\/span> .<span class=\"se\">\\v<\/span><span class=\"nb\">env<\/span><span class=\"se\">\\S<\/span>cripts<span class=\"se\">\\a<\/span>ctivate\r\n<span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> \r\n<\/code><\/pre>\n<h2>\u5b89\u88c5Django<\/h2>\n<p>\u8f93\u5165\u547d\u4ee4 &#8220;pip install django&#8221; \u5728\u865a\u62df\u73af\u5883\u4e2d\u5b89\u88c5Django\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> pip <span class=\"nb\">install <\/span>django\r\n<span class=\"go\">Collecting django\r\n  Using cached https:\/\/files.pythonhosted.org\/packages\/8a\/c4\/f946a6b02fcbba84e56074f2fc36866433b009bea2528b09fe0bac4fe1aa\/Django-3.2.16-py3-none-any.whl      \r\nCollecting pytz (from django)\r\n  Downloading https:\/\/files.pythonhosted.org\/packages\/2e\/09\/fbd3c46dce130958ee8e0090f910f1fe39e502cc5ba0aadca1e8a2b932e5\/pytz-2022.7.1-py2.py3-none-any.whl (499kB)\r\n    100% |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 501kB 3.0MB\/s\r\n<\/span><span class=\"gp\">Collecting asgiref&lt;4,&gt;<\/span><span class=\"o\">=<\/span>3.3.2 <span class=\"o\">(<\/span>from django<span class=\"o\">)<\/span>\r\n<span class=\"go\">  Downloading https:\/\/files.pythonhosted.org\/packages\/8f\/29\/38d10a47b322a77b2d12c2b79c789f52956f733cb701d4d5157c76b5f238\/asgiref-3.6.0-py3-none-any.whl       \r\n<\/span><span class=\"gp\">Collecting sqlparse&gt;<\/span><span class=\"o\">=<\/span>0.2.2 <span class=\"o\">(<\/span>from django<span class=\"o\">)<\/span>\r\n<span class=\"go\">  Using cached https:\/\/files.pythonhosted.org\/packages\/97\/d3\/31dd2c3e48fc2060819f4acb0686248250a0f2326356306b38a42e059144\/sqlparse-0.4.3-py3-none-any.whl\r\n<\/span><span class=\"gp\">Collecting typing-extensions;<\/span> python_version &lt; <span class=\"s2\">\"3.8\"<\/span> <span class=\"o\">(<\/span>from asgiref&lt;4,&gt;<span class=\"o\">=<\/span>3.3.2-&gt;django<span class=\"o\">)<\/span>\r\n<span class=\"go\">  Using cached https:\/\/files.pythonhosted.org\/packages\/0b\/8e\/f1a0a5a76cfef77e1eb6004cb49e5f8d72634da638420b9ea492ce8305e8\/typing_extensions-4.4.0-py3-none-any.whl\r\nInstalling collected packages: pytz, typing-extensions, asgiref, sqlparse, django\r\nSuccessfully installed asgiref-3.6.0 django-3.2.16 pytz-2022.7.1 sqlparse-0.4.3 typing-extensions-4.4.0\r\nYou are using pip version 19.0.3, however version 22.3.1 is available.\r\nYou should consider upgrading via the 'python -m pip install --upgrade pip' command.\r\n<\/span><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span>\r\n<\/code><\/pre>\n<p>\u7531\u4e8e\u6536\u5230\u4e86\u63d0\u793a\u8981\u66f4\u65b0pip\uff0c\u6240\u4ee5\u6267\u884c python -m pip install &#8211;upgrade pip \u6765\u66f4\u65b0pip\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> python <span class=\"nt\">-m<\/span> pip <span class=\"nb\">install<\/span> <span class=\"nt\">--upgrade<\/span> pip\r\n<span class=\"go\">Collecting pip\r\n  Using cached https:\/\/files.pythonhosted.org\/packages\/09\/bd\/2410905c76ee14c62baf69e3f4aa780226c1bbfc9485731ad018e35b0cb5\/pip-22.3.1-py3-none-any.whl\r\nInstalling collected packages: pip\r\n  Found existing installation: pip 19.0.3\r\n    Uninstalling pip-19.0.3:\r\n      Successfully uninstalled pip-19.0.3\r\nSuccessfully installed pip-22.3.1\r\n<\/span><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> \r\n<\/code><\/pre>\n<h2>\u521b\u5efa\u9879\u76ee<\/h2>\n<p>\u6211\u4f1a\u521b\u5efa\u4e00\u4e2a\u9879\u76ee\u3002\u8be5\u9879\u76ee\u7684\u540d\u79f0\u5c06\u4f1a\u662fproject\u3002<br \/>\n\u547d\u4ee4\u662fdjango-admin startproject project .\/\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> django-admin startproject project .\/\r\n<\/code><\/pre>\n<p>\u4f1a\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a&#8221;project&#8221;\u7684\u6587\u4ef6\u5939\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/31-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u4fee\u6539project\\settings.py\u6587\u4ef6\u7684\u5185\u5bb9\uff0c\u5c06\u8bed\u8a00\u8bbe\u7f6e\u548c\u65f6\u533a\u8bbe\u7f6e\u6539\u4e3a\u65e5\u672c\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"c1\"># Internationalization<\/span>\r\n<span class=\"c1\"># https:\/\/docs.djangoproject.com\/en\/3.2\/topics\/i18n\/<\/span>\r\n\r\n<span class=\"hdl\"><span class=\"o\">- <\/span><span class=\"n\">LANGUAGE_CODE<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">en-us<\/span><span class=\"sh\">'<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span><span class=\"n\">LANGUAGE_CODE<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">ja<\/span><span class=\"sh\">'<\/span>\r\n<\/span>\r\n<span class=\"hdl\"><span class=\"o\">- <\/span><span class=\"n\">TIME_ZONE<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">UTC<\/span><span class=\"sh\">'<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span><span class=\"n\">TIME_ZONE<\/span> <span class=\"o\">=<\/span> <span class=\"sh\">'<\/span><span class=\"s\">Asia\/Tokyo<\/span><span class=\"sh\">'<\/span>\r\n<\/span><\/code><\/pre>\n<h2>\u786e\u8ba4Django\u670d\u52a1\u5668\u662f\u5426\u5df2\u7ecf\u542f\u52a8\u3002<\/h2>\n<p>\u4f7f\u7528\u547d\u4ee4 &#8220;python .\\manage.py runserver&#8221; \u542f\u52a8 Django \u670d\u52a1\u5668\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> python .<span class=\"se\">\\m<\/span>anage.py runserver\r\n<span class=\"go\">Watching for file changes with StatReloader\r\nPerforming system checks...\r\n\r\nSystem check identified no issues (0 silenced).\r\n\r\nYou have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.\r\nRun 'python manage.py migrate' to apply them.\r\nJanuary 15, 2023 - 17:07:28\r\nDjango version 3.2.16, using settings 'project.settings'\r\nStarting development server at http:\/\/127.0.0.1:8000\/\r\nQuit the server with CTRL-BREAK.\r\n[15\/Jan\/2023 17:09:29] \"GET \/ HTTP\/1.1\" 200 10854\r\n[15\/Jan\/2023 17:09:29] \"GET \/static\/admin\/css\/fonts.css HTTP\/1.1\" 200 423\r\n[15\/Jan\/2023 17:09:29] \"GET \/static\/admin\/fonts\/Roboto-Bold-webfont.woff HTTP\/1.1\" 200 86184\r\n[15\/Jan\/2023 17:09:29] \"GET \/static\/admin\/fonts\/Roboto-Regular-webfont.woff HTTP\/1.1\" 200 85876\r\n[15\/Jan\/2023 17:09:29] \"GET \/static\/admin\/fonts\/Roboto-Light-webfont.woff HTTP\/1.1\" 200 85692\r\nNot Found: \/favicon.ico\r\n[15\/Jan\/2023 17:09:30] \"GET \/favicon.ico HTTP\/1.1\" 404 2111\r\n<\/span><\/code><\/pre>\n<p>\u5728\u6d4f\u89c8\u5668\u4e2d\u6253\u5f00\u7f51\u5740 http:\/\/localhost:8000\/\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/38-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u5728\u7ec8\u7aef\u4e2d\uff0c\u505c\u6b62Django\u670d\u52a1\u5668\u7684\u65b9\u6cd5\u662f\u6309\u4e0bCtrl+C\u3002<\/p>\n<h2>\u521b\u5efa\u5e94\u7528\u7a0b\u5e8f<\/h2>\n<p>\u6211\u5c06\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\uff0c\u540d\u4e3aapp01\u3002<br \/>\n\u547d\u4ee4\u662f python .\/manage.py startapp app01\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"gp\">(venv) PS C:\\ws\\sample&gt;<\/span> python .\/manage.py startapp app01\r\n<\/code><\/pre>\n<p>\u5c06\u521b\u5efa\u4e00\u4e2a\u540d\u4e3aapp01\u7684\u6587\u4ef6\u5939\u3002<\/p>\n<h2>\u5e94\u7528\u7a0b\u5e8f\u6ce8\u518c<\/h2>\n<p>\u5728project\\setings.py\u6587\u4ef6\u4e2d\u6ce8\u518c\u5df2\u521b\u5efa\u7684\u5e94\u7528\u7a0b\u5e8f\u5230INSTALLED_APPS\u4e2d\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"c1\"># Application definition<\/span>\r\n\r\n<span class=\"n\">INSTALLED_APPS<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.admin<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.auth<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.contenttypes<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.sessions<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.messages<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"sh\">'<\/span><span class=\"s\">django.contrib.staticfiles<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n<span class=\"hil\"><span class=\"o\">+ <\/span>   <span class=\"sh\">'<\/span><span class=\"s\">app01<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n<\/span><span class=\"p\">]<\/span>\r\n\r\n<\/code><\/pre>\n<h2>\u5e94\u7528\u7a0b\u5e8f\u5b9e\u65bd<\/h2>\n<p>\u6211\u5c06\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u8bb0\u5f55\u5185\u5bb9\u3002<br \/>\n\u76ee\u6807\u662f app01\/views.py\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"kn\">from<\/span> <span class=\"n\">django.shortcuts<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">render<\/span>\r\n\r\n<span class=\"c1\"># Create your views here.<\/span>\r\n\r\n<span class=\"hil\"><span class=\"o\">+ <\/span><span class=\"k\">def<\/span> <span class=\"nf\">index<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">):<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span>    <span class=\"n\">message<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span>        <span class=\"sh\">'<\/span><span class=\"s\">text<\/span><span class=\"sh\">'<\/span><span class=\"p\">:<\/span><span class=\"sh\">'<\/span><span class=\"s\">Hello<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span>    <span class=\"p\">}<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span>    <span class=\"k\">return<\/span> <span class=\"nf\">render<\/span><span class=\"p\">(<\/span><span class=\"n\">request<\/span><span class=\"p\">,<\/span> <span class=\"sh\">'<\/span><span class=\"s\">app01\/index.html<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">message<\/span><span class=\"p\">)<\/span>\r\n<\/span><\/code><\/pre>\n<p>\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a index.html \u7684\u6587\u4ef6\u3002<br \/>\n\u5148\u5728 app01 \u6587\u4ef6\u5939\u4e2d\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a templates \u7684\u6587\u4ef6\u5939\uff0c\u7136\u540e\u5728\u8be5\u6587\u4ef6\u5939\u4e2d\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a app01 \u7684\u6587\u4ef6\u5939\u3002\u5c06 index.html \u6587\u4ef6\u521b\u5efa\u5728 app01 \u6587\u4ef6\u5939\u7684\u5185\u90e8\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"cp\">&lt;!doctype html&gt;<\/span>\r\n<span class=\"nt\">&lt;html<\/span> <span class=\"na\">lang=<\/span><span class=\"s\">\"ja\"<\/span><span class=\"nt\">&gt;<\/span>\r\n  <span class=\"nt\">&lt;head&gt;<\/span>\r\n    <span class=\"nt\">&lt;title&gt;<\/span>app01<span class=\"nt\">&lt;\/title&gt;<\/span>\r\n  <span class=\"nt\">&lt;\/head&gt;<\/span>\r\n  <span class=\"nt\">&lt;body&gt;<\/span>\r\n    {{text}}\r\n  <span class=\"nt\">&lt;\/body&gt;<\/span>\r\n<span class=\"nt\">&lt;\/html&gt;<\/span>\r\n<\/code><\/pre>\n<h2>\u5e94\u7528\u7a0b\u5e8f\u7684URL\u6ce8\u518c<\/h2>\n<p>\u5728 project\/urls.py \u6587\u4ef6\u4e2d\u7f16\u5199\u4ee3\u7801\u4ee5\u8c03\u7528\u521b\u5efa\u7684\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"kn\">from<\/span> <span class=\"n\">django.contrib<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">admin<\/span>\r\n<span class=\"hdl\"><span class=\"o\">- <\/span><span class=\"kn\">from<\/span> <span class=\"n\">django.urls<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">path<\/span>\r\n<\/span><span class=\"hil\"><span class=\"o\">+ <\/span><span class=\"kn\">from<\/span> <span class=\"n\">django.urls<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">path<\/span><span class=\"p\">,<\/span> <span class=\"n\">include<\/span>\r\n<\/span>\r\n<span class=\"n\">urlpatterns<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span>\r\n    <span class=\"nf\">path<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">admin\/<\/span><span class=\"sh\">'<\/span><span class=\"p\">,<\/span> <span class=\"n\">admin<\/span><span class=\"p\">.<\/span><span class=\"n\">site<\/span><span class=\"p\">.<\/span><span class=\"n\">urls<\/span><span class=\"p\">),<\/span>\r\n<span class=\"hil\"><span class=\"o\">+ <\/span>    <span class=\"nf\">path<\/span><span class=\"p\">(<\/span><span class=\"sh\">''<\/span><span class=\"p\">,<\/span> <span class=\"nf\">include<\/span><span class=\"p\">(<\/span><span class=\"sh\">'<\/span><span class=\"s\">app01.urls<\/span><span class=\"sh\">'<\/span><span class=\"p\">)),<\/span>\r\n<\/span><span class=\"p\">]<\/span>\r\n<\/code><\/pre>\n<p>\u8fdb\u4e00\u6b65\u521b\u5efaapp01\/urls.py\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"kn\">from<\/span> <span class=\"n\">django.urls<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">path<\/span>\r\n<span class=\"kn\">from<\/span> <span class=\"n\">.<\/span> <span class=\"kn\">import<\/span> <span class=\"n\">views<\/span>\r\n\r\n<span class=\"n\">urlpatterns<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span>\r\n    <span class=\"nf\">path<\/span><span class=\"p\">(<\/span><span class=\"sh\">''<\/span><span class=\"p\">,<\/span> <span class=\"n\">views<\/span><span class=\"p\">.<\/span><span class=\"n\">index<\/span><span class=\"p\">),<\/span>\r\n<span class=\"p\">]<\/span>\r\n<\/code><\/pre>\n<h2>\u5e94\u7528\u7a0b\u5e8f\u8fd0\u884c\u6d4b\u8bd5<\/h2>\n<p>\u542f\u52a8Django\u670d\u52a1\u5668\u4ee5\u786e\u8ba4\u5e94\u7528\u7a0b\u5e8f\u7684\u8fd0\u884c\u60c5\u51b5\u3002<\/p>\n<div><img decoding=\"async\" class=\"post-images\" title=\"\" src=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/59-0.png\" alt=\"image.png\" \/><\/div>\n<p>\u53ea\u9700\u8981\u5b9e\u73b0\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n<hr \/>\n<p>\u8fd9\u91cc\u662f\u4f7f\u7528Bootstrap\u7684\u65b9\u6cd5\u3002<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u56e0\u4e3a\u5e38\u5e38\u5fd8\u8bb0\u5f00\u59cb\u521b\u5efaDjango\u5e94\u7528\u7a0b\u5e8f\u7684\u6b65\u9aa4\uff0c\u6240\u4ee5\u6211\u51b3\u5b9a\u8bb0\u4e0b\u7b14\u8bb0\u3002 \u6982\u8ff0 \u603b\u7ed3\u521b\u5efaDjango\u5e94\u7528\u7684\u6b65\u9aa4\u3002  [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-49309","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\" \/>\n<meta property=\"og:description\" content=\"\u56e0\u4e3a\u5e38\u5e38\u5fd8\u8bb0\u5f00\u59cb\u521b\u5efaDjango\u5e94\u7528\u7a0b\u5e8f\u7684\u6b65\u9aa4\uff0c\u6240\u4ee5\u6211\u51b3\u5b9a\u8bb0\u4e0b\u7b14\u8bb0\u3002 \u6982\u8ff0 \u603b\u7ed3\u521b\u5efaDjango\u5e94\u7528\u7684\u6b65\u9aa4\u3002 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-04T12:23:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-04T10:10:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/12-0.png\" \/>\n<meta name=\"author\" content=\"\u79d1, \u96c5\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u79d1, \u96c5\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/\",\"name\":\"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2022-11-04T12:23:04+00:00\",\"dateModified\":\"2024-05-04T10:10:18+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a\",\"name\":\"\u79d1, \u96c5\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g\",\"caption\":\"\u79d1, \u96c5\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/keya\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\/","og_locale":"zh_CN","og_type":"article","og_title":"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4","og_description":"\u56e0\u4e3a\u5e38\u5e38\u5fd8\u8bb0\u5f00\u59cb\u521b\u5efaDjango\u5e94\u7528\u7a0b\u5e8f\u7684\u6b65\u9aa4\uff0c\u6240\u4ee5\u6211\u51b3\u5b9a\u8bb0\u4e0b\u7b14\u8bb0\u3002 \u6982\u8ff0 \u603b\u7ed3\u521b\u5efaDjango\u5e94\u7528\u7684\u6b65\u9aa4\u3002 [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2022-11-04T12:23:04+00:00","article_modified_time":"2024-05-04T10:10:18+00:00","og_image":[{"url":"https:\/\/cdn.silicloud.com\/blog-img\/blog\/img\/657d8abf913a08637a6cb265\/12-0.png"}],"author":"\u79d1, \u96c5","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u79d1, \u96c5","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"3 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/","name":"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2022-11-04T12:23:04+00:00","dateModified":"2024-05-04T10:10:18+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"Django\u5e94\u7528\u7a0b\u5e8f\u7684\u521d\u59cb\u6b65\u9aa4"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/41e222757cdd2a3365361328bd79970a","name":"\u79d1, \u96c5","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b2d3e00a7df03689797ebd4af8c5827ba5af936849a71050ec331f4cf902c5d?s=96&d=mm&r=g","caption":"\u79d1, \u96c5"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/keya\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/django%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e7%9a%84%e5%88%9d%e5%a7%8b%e6%ad%a5%e9%aa%a4\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49309","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=49309"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49309\/revisions"}],"predecessor-version":[{"id":99882,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/49309\/revisions\/99882"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=49309"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=49309"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=49309"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}