标签: dumpdata

Django转储单个模型的数据?

我可以dumpdata在一个模型上执行一个Django,而不是整个应用程序,如果是这样,怎么样?

对于一个应用程序,它将是:

python manage.py dumpdata myapp
Run Code Online (Sandbox Code Playgroud)

但是,我想要一些特定的模型,例如"myapp.mymodel"被转储.原因是,我有一些巨大的,300万条记录,数据集在同一个应用程序中,我不喜欢转储.

django django-models loaddata dumpdata

130
推荐指数
6
解决办法
8万
查看次数

使用Django dumpdata转储整体数据的子集?

我正在尝试使用dumpdata为数据库生成JSON,该数据库足够大,django需要很长很长时间才能输出.有没有办法只转储一部分字段; 比方说,100,进行测试?

我正在使用MySQL和Django 1.0.

mysql django django-models dumpdata

17
推荐指数
1
解决办法
6072
查看次数

在Django中,在尝试转储数据时遇到"错误:无法序列化数据库"?

当我尝试将数据转储到我的实时服务器上的Djanog 1.2.1中的JSON夹具时,我收到错误.在实时服务器上,它运行MySQL Server版本5.0.77,我使用phpMyAdmin接口将大量数据导入到我的表中.该网站工作正常,Django管理员正常响应.但是,当我尝试实际转储与表对应的应用程序的数据时,我收到此错误:

$ python manage.py dumpdata --indent=2 gigs > fixtures/gigs_100914.json 
/usr/local/lib/python2.6/site-packages/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated
  from sets import ImmutableSet
Error: Unable to serialize database: Location matching query does not exist.
Run Code Online (Sandbox Code Playgroud)

我正在尝试转储的'gigs'的Django模型在models.py文件中看起来像这样:

from datetime import datetime
from django.db import models

class Location(models.Model):
    name = models.CharField(max_length=120, blank=True, null=True)

    class Meta:
        ordering = ['name']

    def __unicode__(self):
        return "%s (%s)" % (self.name, self.pk)

class Venue(models.Model):
    name = models.CharField(max_length=120, blank=True, null=True)
    contact = models.CharField(max_length=250, blank=True, null=True)
    url = models.URLField(max_length=60, verify_exists=False, blank=True, null=True) …
Run Code Online (Sandbox Code Playgroud)

mysql django json fixtures dumpdata

17
推荐指数
1
解决办法
1万
查看次数

Django dumpdata UTF-8(Unicode)

有没有一种从数据库转储UTF-8数据的简单方法?

我知道这个命令:

manage.py dumpdata > mydata.json
Run Code Online (Sandbox Code Playgroud)

但是我在mydata.json文件中得到的数据,Unicode数据看起来像:

"name": "\u4e1c\u6cf0\u9999\u6e2f\u4e94\u91d1\u6709\u9650\u516c\u53f8"
Run Code Online (Sandbox Code Playgroud)

我想看一个真正的Unicode字符串,如????????(中文).

django utf-8 dumpdata

16
推荐指数
5
解决办法
8159
查看次数

如何将call_command与dumpdata命令一起使用以将json保存到文件中

我试图使用该call_command方法来调用dumpdata command.手动,我按如下方式使用它将数据保存到文件中.

python manage.py dumpdata appname_one appname_two > /path/to/save/file.json
Run Code Online (Sandbox Code Playgroud)

它保存了json文件.现在,我处于需要使用该call_command方法调用此命令的情况.

我可以使用以下命令从命令打印出json:

from django.core.management import call_command

call_command('dumpdata', 'appname_one', 'appname_two')
Run Code Online (Sandbox Code Playgroud)

有没有办法可以将给定的数据保存到文件中,就像我们从命令行那样做?

django json command call dumpdata

14
推荐指数
2
解决办法
9697
查看次数

Dumpdata与非托管模型

我正在尝试将我的数据库(sqlite3)转储到一个夹具的json文件,但是我有一个非托管模型导致no such table错误(显然!)所以你如何在db中使用这些模型dumpdata?

模型:

from django.db import models


class Backup(models.Model):
    """
    This class is lazily recycled between various forms that ask the user to
    provide a path to some data.
    """

    dbloc = models.CharField(
        max_length = 255
    )

    class Meta:
        app_label = 'myApp'
        db_table = 'backup'
        managed = False
Run Code Online (Sandbox Code Playgroud)

错误:

CommandError: Unable to serialize database: no such table: backup

sqlite django dumpdata

7
推荐指数
1
解决办法
2512
查看次数

Django的"dumpdata"或Postgres的"pg_dump"?

我不确定这个问题是应该发布在数据库管理员部分还是这里,所以请告知我是否错了.

我有一个基于Django的网站,它没有太大变化.如果我需要重新部署或数据库损坏,我使用python manage.py dumpdata --all --indent=2 > backup.json并重新加载数据loaddata.(我知道什么时候不排除出现完整性错误authcontent_types)

由于我在后端使用PostgreSQL,我使用它是"最佳实践"还是"更明智" pg_dump,然后pg_restore如果出现问题或需要重新部署?

因此,dumpdata转储与所选应用程序(和/或模型)关联的所有数据,并pg_dump执行数据库的完全转储.这是同一件事还是我错过了一个根本的区别(请注意,我对DBA有0次经验)?

我选择哪个选项以及为什么?

database django postgresql database-backups dumpdata

6
推荐指数
1
解决办法
2395
查看次数

Django:通用外键dumpdata:无法解析依赖项

我使用通用外键将不同的配置文件与我Users继承的模型相关联auth.User.dumpdata虽然通过了--natural选项,但我无法做到.它说,

错误:无法解析序列化应用程序列表中myproject.AdminProfile,myproject.TeacherProfile,myproject.Users的依赖项.

根据文档,据说我们需要实现natural_key方法来获取和闪存涉及通用关系的灯具.我怎么能用这里展示的模型做到这一点?

class Users(User):
    location = models.TextField('Location', blank=True)
    created_by = models.ForeignKey('self', null=True, blank=True, related_name='created_by_user')

    # Generic foreign key setup to hold the extra attributes
    profile_contenttype = models.ForeignKey(ContentType, null=True, blank=True)
    profile_object_id = models.PositiveIntegerField('Extra ID', null=True, blank=True)
    profile_object = generic.GenericForeignKey('profile_contenttype', 'profile_object_id')


class AdminProfile(models.Model):
    organization = models.CharField('Organization', max_length=100)

    # profile reverse relation to get the user
    users_link = generic.GenericRelation('Users', content_type_field='profile_contenttype',
                                         object_id_field='profile_object_id')

class TeacherProfile(models.Model):
    designation = models.CharField('Designation', max_length=100)

    # profile reverse …
Run Code Online (Sandbox Code Playgroud)

generics django foreign-key-relationship natural-key dumpdata

5
推荐指数
1
解决办法
1619
查看次数

Django从MySQL迁移到Postgres

我最近决定要从MySQL切换到Postgres,因为我遇到了一些问题,这在Postgres上永远不会成为问题.

但是,我似乎无法找到一个很好的迁移方式我已经看了py-mysql2pgsql然而这导致数据库中的问题,我无法追查.

我也使用django-admin.py查看了dumpdata和loaddata,但是我的数据库相当大,它消耗了我所有的内存并且简单地崩溃了所以我转移到了django-dumpdata-chunks,这只是错误,但是再次projec是两年旧.

我要问的是,这里的任何人都知道一个很好的可靠方法从mysql迁移到postgres而不破坏数据库,如果没有停机时可以作为奖励吗?

mysql django postgresql migrate dumpdata

5
推荐指数
1
解决办法
821
查看次数

具有dumpdata和迁移的Django备份策略

这个问题中,我dumpdata为我的数据库设置了一个基于备份的系统.该设置类似于运行调用dumpdata并将备份移动到远程服务器的cron脚本,目的是简单地使用loaddata恢复数据库.但是,我不确定它是否适合迁移.loaddata现在有一个ignorenonexistent开关来处理已删除的模型/字段,但它无法解决使用一次性默认值或应用RunPython代码添加列的情况.

我看到它的方式,有两个子问题需要解决:

  • dumpdata使用每个应用程序的当前版本标记每个输出文件
  • 将夹具拼接到迁移路径中

我不知道如何在不引入大量开销的情况下解决第一个问题.是否足以为每个包含{app_name: migration_number}映射的备份保存额外的文件?

一旦第一个问题得到解决,我认为第二个问题就更容易了,因为这个过程大致是:

  1. 创建一个新数据库
  2. 将迁移运行到每个应用程序的适当位置
  3. loaddata使用给定的fixture文件调用
  4. 运行其余的迁移

这个问题中有一些代码(从错误报告中链接),我认为可以为此目的进行调整.

由于这些是数据库的相当规则/大型快照,因此我不希望将它们作为数据迁移使迁移目录混乱.

python django backup dumpdata django-migrations

5
推荐指数
1
解决办法
4262
查看次数