草庐IT

Django-imagekit

全部标签

python - Django 查询性能

我有一个关于Django查询的与性能相关的问题。假设我有一张包含10,000条记录的员工表。现在,如果我想随机选择5名年龄大于或等于20岁的员工,假设有5,500名员工年龄在20岁或以上。Django查询将是:Employee.objects.filter(age__gte=20).order_by('?')[:5]这个查询在mysql中的原始对应将是:SELECT*FROM`database`.`employee`WHERE`employee`.`age`>=20ORDERBYRAND()LIMIT5;从django查询的外观来看,数据库首先返回5,500条记录,然后python随机

mysql - Django 从 MySQL 迁移到 Postgres

我最近决定从MySQL切换到Postgres,因为我遇到了一些问题,而这些问题在Postgres上本不应该成为问题。但是我似乎找不到一个好的迁移方法我已经查看了py-mysql2pgsql但这导致了数据库中的问题我无法追踪。我还使用django-admin.py查看了dumpdata和loaddata但是我的数据库相当大并且它消耗了我所有的内存并且只是崩溃了所以我然后转移到django-dumpdata-chunks只是错误但是然后又是项目两岁了。我想问的是,这里有没有人知道从mysql迁移到postgres的可靠方法而不破坏数据库,并且如果可能的话在不停机的情况下作为奖励?

mysql - Django 偶尔无法连接到数据库(Centos)

我有一个非常奇怪的问题,我有一个运行mod_wsgi的Apache服务器。该网站运行良好,但每隔一段时间我就会收到IOError:failedtowritedata网站所有页面上的错误。然后我用解决了sudoservicemysqldrestart由于网站不能宕机太久,我没有时间去调试这个问题,每次出现这种情况我都直接运行命令。我只在日志中看到错误,这就是我无法真正调试它的原因,而且它没有明确的复制步骤,它只是随机发生。如有任何帮助,我们将不胜感激,如果您需要我发布任何配置文件,请告诉我。编辑:django显示的确切错误是:(2002,"Can'tconnecttolocalMySQL

mysql - Django admin - 模型对 super 用户可见,对员工用户不可见

我知道syncdb和makemigrations,但我们只能在生产环境中使用。我们最近在生产环境中创建了几个表。正如预期的那样,表在管理员中对任何用户都是不可见的。发布之后,我们在生产sql上手动执行了以下2个查询(我在本地运行迁移并执行showcreatetable查询以获取原始sql)django_content_typeINSERTINTOdjango_content_type(name,app_label,model)values('linked_urls',"urls",'linked_urls');auth_permissionINSERTINTOauth_permissi

python - 根据 Django 中的项目分组进行分页

对于在Django/Python中实现的网站,我们有以下要求:在View页面上,每个网页显示15条消息。当来自同一来源的两条或多条消息在View中相互跟随时,应将它们分组在一起。可能不是很清楚,但是用下面的例子可能是:一个例子是(这次页面上有5条消息):Message1Source1Message2Source2Message3Source2Message4Source1Message5Source3...这应该显示为:Message1Source1Message2Source2(clickhereto1moremessagefromSource2)Message4Source1Mes

mysql - 如何创建临时表而不丢失 Django 中的 ORM?

我很好奇如何在Django中创建临时表?(数据库是mysql,客户端需求)CREATETEMPORARYTABLEsomewhat_like_a_cacheAS(SELECT*FROMexpensive_query_with_multiple_joins);SELECT*FROMsomewhat_like_a_cacheLIMIT1000OFFSETX;背后的原因:结果集相当大,我必须对其进行迭代。昂贵的查询大约需要30秒。如果没有临时表,我会对数据库服务器施加压力几个小时。使用临时表,昂贵的查询只执行一次,之后在切片中迭代临时表是便宜的。这不是重复的HowdoIcreateatemp

mysql - 多个进程访问 Django 数据库后端;直到手动调用 _commit 才显示记录

我有一个Django项目,其中多个进程正在访问后端mysql数据库。一个进程正在创建记录,而第二个进程正在尝试读取这些记录。我遇到一个问题,在我手动调用connection._commit()之前,尝试读取记录的第二个进程实际上无法找到记录。这个问题之前有人问过:cachingissuesinMySQLresponsewithMySQLdbinDjangoOP说他解决了这个问题,但没有完全解释是如何解决的。任何人都可以阐明这一点吗?我希望无需手动调用_commit()即可访问记录。谢谢,阿西夫 最佳答案 他说:Django'saut

python - 列的 Django 数据库级别默认值

Django正在证明模型字段参数默认值(https://docs.djangoproject.com/en/dev/ref/models/fields/#default)但据我所知,每次通过Django创建新对象时都会调用它。如果我们使用原始查询插入/创建记录(使用django.db.connection.cursor),我们将得到异常,因为Field'xyz'没有默认值。如何表示模型中列的数据库级默认值。像db_index。我希望你们能理解我的问题。 最佳答案 有一个开放的ticket470在SQL架构中包含默认值。在将此功能添加

mysql - Django AutoField 默认值错误

Django1.7.1、MySQL5.6、Python2.7.8我有一个看起来像这样的模型:classHost(models.Model):hostName=models.CharField(max_length=45,primary_key=True)...我手动删除了primary_key=True,这导致manage.pysqlmigrate显示正在删除主键,一个自动递增的'id'列被添加,它正在获取主键。我被提示为新的'id'列输入默认值,并错误地给它1,它已经在表中了。相关的SQL读作:ALTERTABLE`Host`ADDCOLUMN`id`integerAUTO_INCR

mysql - Django 中区分大小写的搜索,但在 Mysql 中被忽略

我在Django模型中有一个字段用于存储唯一(哈希)值。事实证明,数据库(MySQL/inno)不会对这种类型(VARCHAR)进行区分大小写的搜索,即使我明确告诉Django进行区分大小写的搜索也不会Document.objects.get(hash__exact="abcd123")。所以“abcd123”和“ABcd123”都被返回,这是我不想要的。classdocument(models.Model):filename=models.CharField(max_length=120)hash=models.CharField(max_length=33)我可以将“哈希字段”更改