在Django上启动项目时要做的第一件事

向社区致以问候,我面临着编写社交网络的挑战。 由于我或多或少都说Python是一种编程语言,因此我选择了Django框架来实现该项目。 为了不浪费时间编写HTML模板和CSS样式,我在Internet上将这些文件标记为Free。 这些主要是Colorlib的模板。

走吧

立即预订我正在使用PyCharm,因此我可能不知道来自manage.py文件的所有命令。

在环境中创建项目之后,就像在任何Django项目中一样,要做的第一件事是更改settings.py文件,即:

  1. 将两个变量更改为

    LANGUAGE_CODE = 'ru-ru' TIME_ZONE = '  / ' #: Europe/Moscow 
  2. 为静态和媒体文件添加文件夹

     # Static files STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static') # Media files MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 

接下来,使用以下命令创建您的应用程序

 python manage.py startapp my_app 

据我所知,在Django中编写应用程序的一种好方法是将项目拆分为单独的应用程序,并且已经在其中描述了所需的功能。 这种方法可以轻松地将应用程序从一个项目转移到另一个项目,这非常方便。 让我们走得更远。

创建应用程序后,我们需要注册它才能开始使用它。 将应用程序添加到已用列表中。

 INSTALLED_APPS = [ 'django.contrib.admin', ... 'django.contrib.staticfiles', 'my_app',#  ] 

接下来,您需要确定我们应用程序的URL,这也是一个很好的开发基调。 在应用程序文件夹(不要与项目文件夹混淆)中,必须首先创建urls.py文件。 然后在urls.py文件的项目文件夹中,导入include函数并指定地址。 这也写在文件本身的注释中。

 from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('account.urls')) ] 

如果此时我们使用以下命令启动服务器

 python manage.py runserver 

在命令行上(在PyCharm中,单击“运行”或“调试”按钮),我们得到一个错误,因为在应用程序文件夹中urls.py文件(以下简称为account / urls.py)为空。

用以下代码填充它。

 from django.urls import path from . import views urlpatterns = [ path('', views.index, name='login'),#     ''( ),    ( Django) log ] 

现在将出现错误,因为account / views.py为空。 我们修复它。

 from django.shortcuts import render #  # Create your views here. def index(request):#   context = {}#          HTML return render(request, 'my_app/index.html', context)#   HTML 

快完成了 已经完成的工作:

  1. 在项目中创建了一个应用程序。
  2. 更改设置。
  3. 该地址已在main urls.py项目中注册。
  4. 在应用程序中创建urls.py文件,并在其中写入视图。
  5. 在视图中,已创建一个用于处理地址和HTML模板的url的函数。

现在该创建模板了。

创建项目时,会自动在我们内部创建“模板”文件夹,您需要在其中创建my_app文件夹,在my_app中创建index.html文件。 要签入body标签,您可以编写:

 <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h2> .</h2> </body> </html> 

您可以启动服务器。

最后,我们应该看到这个(图片):

图片

如果站点使用任何CSS样式或JavaScript文件,而这是10种情况中的10种,那么您需要使用以下命令在DOCTYPE行之前加载它们

 {%load staticfiles%} 

在这种情况下,请在应用程序文件夹中创建一个“静态”文件夹,并在其中保留CSS,JS等。 在HTML模板中,使用href参数在link标签中指定文件的绝对路径,例如:

 <link href="{% static 'css/style.css' %}" rel="stylesheet"> 

总计,文件将如下所示:

 {%load staticfiles%} <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <title></title> <link href="{% static 'css/style.css' %}" rel="stylesheet"> </head> <body> <h2> .</h2> </body> </html> 

通常,这就是引言的结尾。 此外,所有动作都将相似,只有本质不同。 应用程序的forms.py文件中将有不同的表单(HTML中的表单标签)(您需要首先创建该文件),views.py中将描述不同的应用程序逻辑,models.py中将描述数据库中的模型。 但是动作的算法是一样的

  1. 创建一个地址。
  2. 创建一个视图(逻辑)。
  3. 创建一个HTML模板。
  4. 我们将所有东西捆绑在一起。

+-一对形式和模型形式的中间动作。

在Metanit博客上(下面的链接),对Model-Template-Presentation的本质进行了很好的描述,我不会复制粘贴,我也有关于形式和模型的理论。

在“ Django Girls Guide”(下面的链接)中,您可以了解有关扩展HTML模板(Django的一项非常有用的功能),创建管理员帐户以及向创建的模型添加数据的更多信息。

我到这里结束。 在下一部分中,将存在一个用于在网站上创建注册表单的代码,并且为了避免在Habré上乱扔垃圾,我将提供指向github的链接。 同志们成功之道。

链接到有用的资源:
Django博客-Metanit
Django女孩指南
示例中的Django

Source: https://habr.com/ru/post/zh-CN463021/


All Articles