• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

django数据库迁移

武飞扬头像
苗苗大佬
帮助1

在django中,ORM(对象关系映射器—object-relational mapper)任务是:模型化数据库,创建数据库由另外一个系统负责(迁移–migration),迁移任务是根据对models.py文件的改动情况,添加或者删除表和列

学新通
依然报错
学新通
学新通
models.py

from django.db import models
class Item(models.Model):
    text=models.TextField(default='')

tests.py

'''from django.test import TestCase

# Create your tests here.
class Smokeclass(TestCase):
    def test_bad_maths(self):
        self.assertEquals(1 1,3)'''''
from  django.urls import  resolve
from  django.test import  TestCase
from lists.views import  home_page
from django.http import  HttpRequest
from lists.models import Item
class HomePageTest(TestCase):
    def test_root_url_resolve_to_home_page_view(self):
        found=resolve('/')
        # resolve函数是django内部使用的函数,用于解析url,
        # 并且将其映射到相应的视图函数上,检查网站根路径时"/",
        # 是否能找到home_page函数
        self.assertEquals(found.func,home_page)
    def test_home_page_returns_correct_html(self):
        request=HttpRequest()
        # 创建httprequest对象,用户在浏览器中请求网页时
        # django看到的就是httprequest对象

        response=home_page(request)
        # 把对象传给home_page视图

        html=response.content.decode('utf8')
        # 提取content,得到结果是原始的字节,即发个用户
        # 浏览器的0和1,随后调用.decode(),把原始字节
        # 转换成发给用户的html字符串

        self.assertTrue(html.startswith('<html>'))

        self.assertIn('<title>To-Do lists</title>',html)

        self.assertTrue(html.endswith('</html>'))
    def test_home_page_returns_correct_html_chonggou(self):
        response=self.client.get('/')
        html = response.content.decode('utf8')
        # 提取content,得到结果是原始的字节,即发个用户
        # 浏览器的0和1,随后调用.decode(),把原始字节
        # 转换成发给用户的html字符串

        self.assertTrue(html.startswith('<html>'))

        self.assertIn('<title>To-Do lists</title>', html)

        self.assertTrue(html.endswith('</html>'))
        self.assertTemplateUsed(response,'home.html')
    def test_user_home_template(self):
        response=self.client.get('/')
        self.assertTemplateUsed(response,'home.html')
    def test_can_save_a_POST_request(self):
        response=self.client.post('/',data={'item_text':'a new list item'})
        self.assertIn('a new list item',response.content.decode())
        self.assertTemplateUsed(response, 'home.html')
class ItemModelTest(TestCase):
    def test_saving_and_retrieving_items(self):
        first_item=Item()
        first_item.text="the first list item"
        first_item.save()
        second_item = Item()
        second_item.text = "the second list item"
        second_item.save()
        saved_items=Item.objects.all()
        self.assertEquals(saved_items.count(),2)
        first_saved_item=saved_items[0]
        second_saved_item=saved_items[1]
        self.assertEquals(first_saved_item.text,'the first list item')
        self.assertEquals(second_saved_item.text, 'the second list item')



学新通
python manage.py makemigrations

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgihjfk
系列文章
更多 icon
同类精品
更多 icon
继续加载