• 回答数

    3

  • 浏览数

    284

偶是吃货范范
首页 > 毕业论文 > 利用django网页毕业论文

3个回答 默认排序
  • 默认排序
  • 按时间排序

yuki198611

已采纳

设计并实现一个基于Python的个人博客系统, 需要完成如下功能

164 评论

空山微风

在毕业答辩中,针对使用 Django 和 Vue 开发的网页,可能会被问到以下问题:

122 评论

Lucia慢半拍

本文演示如何创建一个简单的 django 网站,使用的 django 版本为。1. 创建项目运行下面命令就可以创建一个 django 项目,项目名称叫 mysite :$ startproject mysite创建后的项目目录如下:mysite├── └── mysite ├── ├── ├── └── directory, 5 files说明: :让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。 这是一个空文件,一般你不需要修改它。 :一种命令行工具,允许你以多种方式与该 Django 项目进行交互。 键入python help,看一下它能做什么。 你应当不需要编辑这个文件;在这个目录下生成它纯是为了方便。 :该 Django 项目的设置或配置。:Django项目的URL路由设置。目前,它是空的。:WSGI web 应用服务器的配置文件。更多细节,查看 How to deploy with WSGI接下来,你可以修改 文件,例如:修改 LANGUAGE_CODE、设置时区 TIME_ZONESITE_ID = 1LANGUAGE_CODE = 'zh_CN'TIME_ZONE = 'Asia/Shanghai'USE_TZ = True 上面开启了 [Time zone]() 特性,需要安装 pytz:$ sudo pip install pytz2. 运行项目在运行项目之前,我们需要创建数据库和表结构,这里我使用的默认数据库:$ python migrateOperations to perform: Apply all migrations: admin, contenttypes, auth, sessionsRunning migrations: Applying ... OK Applying ... OK Applying ... OK Applying ... OK然后启动服务:$ python runserver你会看到下面的输出:Performing system checks...System check identified no issues (0 silenced).January 28, 2015 - 02:08:33Django version , using settings ''Starting development server at the server with CONTROL-C.这将会在端口8000启动一个本地服务器, 并且只能从你的这台电脑连接和访问。 既然服务器已经运行起来了,现在用网页浏览器访问 。你应该可以看到一个令人赏心悦目的淡蓝色 Django 欢迎页面它开始工作了。你也可以指定启动端口:$ python runserver 8080以及指定 ip:$ python runserver . 创建 app前面创建了一个项目并且成功运行,现在来创建一个 app,一个 app 相当于项目的一个子模块。在项目目录下创建一个 app:$ python startapp polls如果操作成功,你会在 mysite 文件夹下看到已经多了一个叫 polls 的文件夹,目录结构如下:polls├── ├── ├── migrations│ └── ├── ├── └── directory, 6 files4. 创建模型每一个 Django Model 都继承自 在 Model 当中每一个属性 attribute 都代表一个 database field通过 Django Model API 可以执行数据库的增删改查, 而不需要写一些数据库的查询语句打开 polls 文件夹下的 文件。创建两个模型:import datetimefrom import modelsfrom import timezoneclass Question(): question_text = (max_length=200) pub_date = ('date published') def was_published_recently(self): return >= () - (days=1)class Choice(): question = (Question) choice_text = (max_length=200) votes = (default=0)然后在 mysite/ 中修改 INSTALLED_APPS 添加 polls:INSTALLED_APPS = ( '', '', '', '', '', '', 'polls',)在添加了新的 app 之后,我们需要运行下面命令告诉 Django 你的模型做了改变,需要迁移数据库:$ python makemigrations polls你会看到下面的输出日志:Migrations for 'polls': : - Create model Choice - Create model Question - Add field question to choice你可以从 polls/migrations/ 查看迁移语句。运行下面语句,你可以查看迁移的 sql 语句:$ python sqlmigrate polls 0001输出结果:BEGIN;CREATE TABLE "polls_choice" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "choice_text" varchar(200) NOT NULL, "votes" integer NOT NULL);CREATE TABLE "polls_question" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "question_text" varchar(200) NOT NULL, "pub_date" datetime NOT NULL);CREATE TABLE "polls_choice__new" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "choice_text" varchar(200) NOT NULL, "votes" integer NOT NULL, "question_id" integer NOT NULL REFERENCES "polls_question" ("id"));INSERT INTO "polls_choice__new" ("choice_text", "votes", "id") SELECT "choice_text", "votes", "id" FROM "polls_choice";DROP TABLE "polls_choice";ALTER TABLE "polls_choice__new" RENAME TO "polls_choice";CREATE INDEX polls_choice_7aa0f6ee ON "polls_choice" ("question_id");COMMIT;你可以运行下面命令,来检查数据库是否有问题:$ python check再次运行下面的命令,来创建新添加的模型:$ python migrateOperations to perform: Apply all migrations: admin, contenttypes, polls, auth, sessionsRunning migrations: Applying ... OK总结一下,当修改一个模型时,需要做以下几个步骤:修改 文件运行 python makemigrations 创建迁移语句运行 python migrate,将模型的改变迁移到数据库中你可以阅读 documentation,查看更多 的用法。创建了模型之后,我们可以通过 Django 提供的 API 来做测试。运行下面命令可以进入到 python shell 的交互模式:$ python shell下面是一些测试:>>> from import Question, Choice # Import the model classes we just wrote.# No questions are in the system yet.>>> ()[]# Create a new Question.# Support for time zones is enabled in the default settings file, so# Django expects a datetime with tzinfo for pub_date. Use ()# instead of () and it will do the right thing.>>> from import timezone>>> q = Question(question_text="What's new?", pub_date=())# Save the object into the database. You have to call save() explicitly.>>> ()# Now it has an ID. Note that this might say "1L" instead of "1", depending# on which database you're using. That's no biggie; it just means your# database backend prefers to return integers as Python long integer# objects.>>> Access model field values via Python attributes.>>> "What's new?">>> (2012, 2, 26, 13, 0, 0, 775217, tzinfo=)# Change values by changing the attributes, then calling save().>>> = "What's up?">>> ()# () displays all the questions in the database.>>> ()[]打印所有的 Question 时,输出的结果是 [],我们可以修改模型类,使其输出更为易懂的描述。修改模型类:from import modelsclass Question(): # ... def __str__(self): # __unicode__ on Python 2 return Choice(): # ... def __str__(self): # __unicode__ on Python 2 return 接下来继续测试:>>> from import Question, Choice# Make sure our __str__() addition worked.>>> ()[]# Django provides a rich database lookup API that's entirely driven by# keyword arguments.>>> (id=1)[]>>> (question_text__startswith='What')[]# Get the question that was published this year.>>> from import timezone>>> current_year = ().year>>> (pub_date__year=current_year)# Request an ID that doesn't exist, this will raise an exception.>>> (id=2)Traceback (most recent call last): ...DoesNotExist: Question matching query does not exist.# Lookup by a primary key is the most common case, so Django provides a# shortcut for primary-key exact lookups.# The following is identical to (id=1).>>> (pk=1)# Make sure our custom method worked.>>> q = (pk=1)# Give the Question a couple of Choices. The create call constructs a new# Choice object, does the INSERT statement, adds the choice to the set# of available choices and returns the new Choice object. Django creates# a set to hold the "other side" of a ForeignKey relation# (. a question's choice) which can be accessed via the API.>>> q = (pk=1)# Display any choices from the related object set -- none so far.>>> ()[]# Create three choices.>>> (choice_text='Not much', votes=0)>>> (choice_text='The sky', votes=0)>>> c = (choice_text='Just hacking again', votes=0)# Choice objects have API access to their related Question objects.>>> # And vice versa: Question objects get access to Choice objects.>>> ()[, , ]>>> ()3# The API automatically follows relationships as far as you need.# Use double underscores to separate relationships.# This works as many levels deep as you want; there's no limit.# Find all Choices for any question whose pub_date is in this year# (reusing the 'current_year' variable we created above).>>> (question__pub_date__year=current_year)[, , ]# Let's delete one of the choices. Use delete() for that.>>> c = (choice_text__startswith='Just hacking')>>> ()>>> 上面这部分测试,涉及到 django orm 相关的知识,详细说明可以参考 Django中的ORM。5. 管理 adminDjango有一个优秀的特性, 内置了Django admin后台管理界面, 方便管理者进行添加和删除网站的内容.新建的项目系统已经为我们设置好了后台管理功能,见 mysite/:INSTALLED_APPS = ( '', #默认添加后台管理功能 '', '', '', '', '', 'mysite',)同时也已经添加了进入后台管理的 url, 可以在 mysite/ 中查看:url(r'^admin/', include()), #可以使用设置好的url进入网站后台接下来我们需要创建一个管理用户来登录 admin 后台管理界面:$ python createsuperuserUsername (leave blank to use 'june'): adminEmail address:Password:Password (again):Superuser created successfully.总结最后,来看项目目录结构:mysite├── ├── ├── mysite│ ├── │ ├── │ ├── │ ├── ├── polls│ ├── │ ├── │ ├── migrations│ │ ├── │ │ ├── │ ├── │ ├── templates│ │ └── polls│ │ ├── │ │ ├── │ │ └── │ ├── │ ├── │ ├── └── templates └── admin └── 通过上面的介绍,对 django 的安装、运行以及如何创建视 图和模型有了一个清晰的认识,接下来就可以深入的学习 django 的自动化测试、持久化、中间件、国 际 化等知识。

157 评论

相关问答

  • 硕士毕业论文引用网页

    可以,但是要注意以下几点: 1、一定要注明出处,即引用文献的作者、文献名称、出版社、年限等信息;引用的章节也最好给予注明;引用文献一般放在论文最后的参考文献加以

    boboyoung1983 7人参与回答 2023-12-05
  • django本科毕业论文

    在毕业答辩中,针对使用 Django 和 Vue 开发的网页,可能会被问到以下问题:

    那夜无边 5人参与回答 2023-12-05
  • django毕业论文选题

    python可以做很多类型的项目或许你可以参考一下:知乎的回答:

    落叶无声2015 5人参与回答 2023-12-10
  • 毕业论文Django难吗

    在毕业答辩中,针对使用 Django 和 Vue 开发的网页,可能会被问到以下问题:

    爱家酒店 4人参与回答 2023-12-08
  • 利用电脑写毕业论文的网站

    1.中国科学院文献情报中心 中国科学院文献情报中心,又名中国科学院图书馆,经过50年的发展已经发展成为全国最大的专业图书馆,科学院和国家知识创新工程重要的基础设

    Annaso安娜 6人参与回答 2023-12-09