小编jpe*_*lli的帖子

如何在django(1.8)迁移中删除索引varchar_pattern_ops?

使用models.varchar(...)字段创建模型时,varchar_pattern_ops正在创建索引.

这是postgresql中生成的表

              Table "public.logger_btilog"
      Column      |           Type           | Modifiers 
------------------+--------------------------+-----------
 md5hash          | text                     | 
 id               | integer                  | not null
Indexes:
    "logger_btilog_pkey" PRIMARY KEY, btree (id)
    "logger_btilog_md5hash_6454d7bb20588b61_like" btree (md5hash varchar_pattern_ops)
Run Code Online (Sandbox Code Playgroud)

我想varchar_pattern_ops在迁移中删除该索引,并在该字段中添加哈希索引.

我试过这样做:

# models.py
class Btilog(models.Model):
    md5hash = models.TextField(db_index=False)
    [...]
Run Code Online (Sandbox Code Playgroud)

并且在迁移中也强制添加 db_field=False

# 0013_migration.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models, migrations


class Migration(migrations.Migration):

    dependencies = [
        ('logger', '0014_btilog_id'),
    ]

    operations = [
        # this should remove all …
Run Code Online (Sandbox Code Playgroud)

migration django postgresql database-indexes django-migrations

5
推荐指数
2
解决办法
2083
查看次数

select子句中多个set-returns函数的预期行为是什么?

我试图通过两个set-returns函数得到一个"交叉连接",但在某些情况下我没有得到"交叉连接",请参阅示例

行为1:当设置的长度相同时,它会逐个匹配每个集合中的项目

postgres=# SELECT generate_series(1,3), generate_series(5,7) order by 1,2;
 generate_series | generate_series 
-----------------+-----------------
               1 |               5
               2 |               6
               3 |               7
(3 rows)

行为2:当设置的长度不同时,它会"交叉连接"这些集合

postgres=# SELECT generate_series(1,2), generate_series(5,7) order by 1,2;
 generate_series | generate_series 
-----------------+-----------------
               1 |               5
               1 |               6
               1 |               7
               2 |               5
               2 |               6
               2 |               7
(6 rows)

我想我在这里不了解一些事情,有人可以解释一下这种行为吗?

编辑:另一个例子,比以前更奇怪

postgres=# SELECT generate_series(1,2) x, generate_series(1,4) y order by x,y;
 x | y 
---+---
 1 | 1
 1 | 3 …

sql postgresql cross-join set-returning-functions

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

为什么sed replace + redirection会删除我的文件?

我正在使用sed搜索并替换bash文件中的两个字符串(GNU sed)

这是之后的文件

-rw-r--r-- 1 websync www-data 4156 mar 27 12:56 /home/websync/tmp/sitio-oficial/sitios/wp-config.php
Run Code Online (Sandbox Code Playgroud)

这是我运行的命令

sed 's/www-test/www/g' /home/websync/tmp/sitio-oficial/sitios/wp-config.php > /home/websync/tmp/sitio-oficial/sitios/wp-config.php
Run Code Online (Sandbox Code Playgroud)

结果

-rw-r--r-- 1 websync www-data 0 mar 27 13:05 /home/websync/tmp/sitio-oficial/sitios/wp-config.php
Run Code Online (Sandbox Code Playgroud)

编辑:如果我没有重定向sed的输出,那么我得到了正确的输出.如果我重定向到一个新文件,一切正常.

bash sed io-redirection

4
推荐指数
2
解决办法
1309
查看次数

理解Ruby on Rails发送(:include

我正在尝试开发一个Redmine插件,我开始阅读文档,并学习了很多Ruby和很多Ruby on Rails.(我是PHP/Python/js家伙)

然后我开始查看其他插件,我发现了这段代码.我找不到足够的信息来完全理解这行代码的工作原理:

Issue.send(:include, RedmineRequireIssueAllowedToChangeAssignee::Patches::IssuePatch)
Run Code Online (Sandbox Code Playgroud)

我知道在IssuePatch中有一些要覆盖或添加到Issue类的东西.

然后我发现了这个,解释了send的使用,这让我感到困惑,为什么不使用Issue.include?

主要问题是:这个方法在哪里include定义,它做了什么?

更新:相关问题

activerecord ruby-on-rails

4
推荐指数
1
解决办法
1247
查看次数

angularjs是否作为$ scope.null处理null?

问题的例子

<div ng-show="bar !== null">hello</div>
Run Code Online (Sandbox Code Playgroud)

这是否在范围内评估为

$scope.bar !== null
Run Code Online (Sandbox Code Playgroud)

还是这样?

$scope.bar !== $scope.null
Run Code Online (Sandbox Code Playgroud)

请注意,在最后一种情况下,$ scope.null将是未定义的,并且示例似乎正常工作.

奖金:

如果bar = null则会发生这种情况

// this does not work (shows hello)
<div ng-show="bar !== null">hello</div>
Run Code Online (Sandbox Code Playgroud)

没有给出相同的结果

// this works ok (does not show hello)
<div ng-show="bar != null">hello</div>
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

angularjs angularjs-scope

4
推荐指数
1
解决办法
618
查看次数

进程执行完成后如何查看/proc/[pid]/status 的内容?

我想看一个小C程序的统计数据,但是是一个开始和结束的小程序。(不是一些长时间运行的程序)。我想在访问内存、缓存命中、上下文切换等方面改进这个程序。

中的参数/proc/[pid]/status很棒,但我找不到执行后查看它们的方法。

进程执行完成后如何查看此文件?

linux statistics performance process

3
推荐指数
1
解决办法
2658
查看次数

javascript中如何监听多个字段的变化?

我目前有以下代码来更新 URL。我如何将其组合成更强大的东西,这样我基本上就不会重复自己3次了。我只希望在其中一个字段发生更改时更新它。

$(document).ready(function(){
  $('#device_select').change(function() {
      var device = $(this).val();
      var face = $('#face_select').val();
      var position = $('#position_select').val();
      document.getElementById("add_dev_rack").href="127.0.0.1:8080/dcim/devices/"+device+"/edit/?face="+face+"&position="+position;
  });
  $('#face_select').change(function() {
      var device = $('#device_select').val();
      var face = $(this).val();
      var position = $('#position_select').val();
      document.getElementById("add_dev_rack").href="127.0.0.1:8080/dcim/devices/"+device+"/edit/?face="+face+"&position="+position;
  });
  $('#position_select').change(function() {
      var device = $('#device_select').val();
      var face = $('#face_select').val();
      var position = $(this).val();
      document.getElementById("add_dev_rack").href="127.0.0.1:8080/dcim/devices/"+device+"/edit/?face="+face+"&position="+position;
  });
}); 
Run Code Online (Sandbox Code Playgroud)

javascript jquery

3
推荐指数
1
解决办法
868
查看次数

如何自动缩放/平移到矢量图层中的所有要素?

使用Openlayers,我想在显示矢量层中所有要素的位置初始化地图。怎么做?

zoom openlayers pan

2
推荐指数
1
解决办法
1681
查看次数

如何反序列化python打印字典?

我在数据库中将python的str字典表示为varchars,我想检索原始的python字典

如何根据词典的str表示重新获得字典?

>>> dic = {u'key-a':u'val-a', "key-b":"val-b"}
>>> dicstr = str(dic)
>>> dicstr
"{'key-b': 'val-b', u'key-a': u'val-a'}"
Run Code Online (Sandbox Code Playgroud)

在该示例中,将dicstr转换为可用的python字典.

python dictionary deserialization

2
推荐指数
1
解决办法
6001
查看次数

如何将异步插入mongodb中的日志?

我想使用PyMongo作为Django应用程序的记录器.

我不介意日志表中的某些插入是否丢失,所以我想将日志发送到另一台服务器的mongodb,并继续执行而不等待确认.

我正在阅读pymongo文档,但我不清楚集合中的插入是否阻塞.

我想在django模型方法中做这个

from pymongo import MongoClient
conn = MongoClient('mongoserver', 27017)
db   = conn.main
col  = db.log
col.insert({"user": "Pedro", "action": "search", "Origin": "Katmandu"}, w=0)
conn.close()
Run Code Online (Sandbox Code Playgroud)

我不知道插件是否像那样异步,是否应该关闭连接

python asynchronous mongodb pymongo

2
推荐指数
1
解决办法
1551
查看次数

websocket 是否适合聊天应用程序?

我使用 websocket 创建了一个小型聊天应用程序,用户可以加入聊天室,并可以与多个用户或群组聊天。

一次最多可以有 80 到 100 个用户可以发送消息(这是我的要求)

所以我的问题是 websocket 对我有用吗?

javascript java websocket

2
推荐指数
1
解决办法
4855
查看次数

角度ng变化与ng模型性能

在输入中使用ng-change而不是ng-model是否有任何性能改进?

我推测,当在输入中使用ng-model时,在变量中使用角度来表示"$ watch"(或类似),这会增加工作量.

但是如果使用ng-change,那么变量(模型)可以在需要时更新,只有当输入改变了这个变量时才能执行代码.

这可以假设只有一个输入可以更改变量.

示例如下:

使用ng-model

<input type="text" ng-model="ElTexto">
<div ng-show="ElTexto"></div>
Run Code Online (Sandbox Code Playgroud)

使用ng-change

HTML

<input type="text" ng-change="elTexto()">
<div ng-show="ElTexto"></div>
Run Code Online (Sandbox Code Playgroud)

JS

$scope.elTexto(){
  $scope.ElTexto = true;
}
Run Code Online (Sandbox Code Playgroud)

javascript performance angularjs

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