问题列表 - 第13943页

我应该如何处理PostgreSQL中的"排名x out of y"数据?

我有一张表,我希望能够提供"排名为Y的Y"数据.特别是,我希望能够以相对有效的方式呈现单个行的数据(即,不选择表中的每一行).排名本身很简单,它是表中单个列的直接ORDER BY.

Postgres似乎在这方面提出了一些独特的挑战; AFAICT它没有RANK或ROW_NUMBER或等效功能(至少在8.3,我暂时坚持).邮件列表档案中的规范答案似乎是创建一个临时序列并从中进行选择:

test=> create temporary sequence tmp_seq;
CREATE SEQUENCE
test=*> select nextval('tmp_seq') as row_number, col1, col2 from foo;
Run Code Online (Sandbox Code Playgroud)

当我想从表中选择一行时,似乎这个解决方案仍然没有帮助(我想通过PK选择它,而不是按等级选择).

我可以对一个单独的列进行非规范化并存储排名,这使得数据显得微不足道,但只是重新定位我的问题.UPDATE不支持ORDER BY,所以我不确定如何构造UPDATE查询来设置排名(没有选择每一行并为每一行运行单独的UPDATE,这似乎是对DB活动的过多每次排名需要更新时触发).

我错过了一些明显的东西吗 什么是正确的方法呢?

编辑:显然我不够清楚.我知道OFFSET/LIMIT,但我不知道它如何帮助解决这个问题.我不是要选择排序第X的项目,我试图选择一个任意项目(通过它的PK,比如说),然后能够向用户显示类似"在312中排名第43位"的内容.

sql postgresql ranking

6
推荐指数
2
解决办法
3663
查看次数

使用URL前缀("子目录")运行Django - 应用程序可行,但URL已损坏?

以下是相关的配置文件,也可以在http://dpaste.com/97213/上找到.

apache配置当前正在工作,因为访问'example.com/'会显示我放在文档根目录下的index.html文件.

我想在前缀'/ d'上提供Django/apps,因此'example.com/d/'会加载默认应用,'example.com/d/app3'会加载另一个,如在网址中配置的那样. PY.

服务Django,我在Linux上使用建议的mod_wsgi.

目前,我可以在'example.com/d'访问Ticket应用程序,但当@login_required装饰器尝试将我发送到登录页面时,我会收到'example.com/accounts/login',而不是预期的'example.com/d/accounts/login'.

由于默认应用程序正确加载,我不确定我在这里做错了什么,或者在生成网址时这是否是Django中的错误.

有什么建议?

编辑: 作为一个说明,如果我更改apache配置行:WSGIScriptAlias/d /home/blah/django_projects/Tickets/apache/django.wsgi到WSGIScriptAlias//home/blah/django_projects/Tickets/apache/django.wsgi该应用程序,评论和登录所有工作正常.即使转到'example.com/admin'也会加载管理员,虽然我已经断开了管理媒体,因此没有加载任何样式表.

---配置关注:

#
# /home/blah/django_projects/Ticket/urls.py
#
from django.conf.urls.defaults import *
from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    (r'^', include('ticket.urls')),
    (r'^admin/', include(admin.site.urls)),
    (r'^comments/', include('django.contrib.comments.urls')),
)


#
# /home/blah/django_projects/Ticket/apache/django.wsgi
#
import os, sys

sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')

sys.path.append('/home/blah/django_projects')
sys.path.append('/home/blah/django_projects/Tickets')

os.environ['DJANGO_SETTINGS_MODULE'] = 'Tickets.settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()


#
# /etc/apache2/sites-available/django_tickets_wsgi (apache conf)
#
NameVirtualHost *
<VirtualHost *>  

    Alias /media /home/blah/django_projects/Tickets/media


    WSGIScriptAlias /d /home/blah/django_projects/Tickets/apache/django.wsgi
    WSGIDaemonProcess exmaple_com user=blah group=blah …
Run Code Online (Sandbox Code Playgroud)

apache django mod-wsgi

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

帮助GCC和ObjectiveC代码和Cygwin

是否可以在cygwin下使用GCC正确构建目标c代码.

我有以下应用程序应该在Mac环境中工作,但无法获得最基本的东西来使用gcc.我需要更多的库吗?

#import "HelloWorldApp.h"

int main(int argc, char *argv[]) {
    return 0;
} // End of the // 

@interface Car
{
    int test;
}

//The registration is a read-only field, set by copy
@property int (readonly, copy) test;

//the driver is a weak reference (no retain), and can be modified
//@property Person* (assign) driver;

@end


CC=gcc
CXX=gcc-g++
LD=$(CC)

CFLAGS=

LDFLAGS=-lobjc

all: HelloWorld

HelloWorld: HelloWorld.o
    $(LD) $(LDFLAGS) -o $@ $^

%.o: %.m
    $(CC) -c $(CFLAGS) $(CPPFLAGS) $< -o $@

clean:
    rm …
Run Code Online (Sandbox Code Playgroud)

windows winapi gcc cygwin objective-c

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

测试Django中的cookie存在

这里简单的东西......

如果我尝试通过Django引用cookie

request.COOKIE["key"]
Run Code Online (Sandbox Code Playgroud)

如果cookie不存在将导致密钥错误.

对于Django的GETPOST,因为它们是QueryDict对象,我可以做

if "foo" in request.GET
Run Code Online (Sandbox Code Playgroud)

这非常精致......

对于不是Try/Catch块的cookie,最接近这个的是什么,如果有的话......

python django cookies http

6
推荐指数
2
解决办法
9910
查看次数

无法让SFTP在PHP中运行

我正在用PHP编写一个简单的SFTP客户端,因为我们需要通过n个远程服务器以编程方式检索文件.我正在使用PECL SSH2扩展.

不过,我遇到了一个障碍.php.net上的文档表明你可以这样做:

$stream = fopen("ssh2.sftp://$sftp/path/to/file", 'r');
Run Code Online (Sandbox Code Playgroud)

但是,我有一个尝试类似的ls方法

public function ls($dir)
{
    $rd = "ssh2.sftp://{$this->sftp}/$dir";
    $handle = opendir($rd);
    if (!is_resource($handle)) {
        throw new SFTPException("Could not open directory.");
    }

    while (false !== ($file = readdir($handle))) {
        if (substr($file, 0, 1) != '.'){
            print $file . "\n";
        }
    }
    closedir($handle);
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

PHP Warning:  opendir(): Unable to open ssh2.sftp://Resource id #5/outgoing on remote host
Run Code Online (Sandbox Code Playgroud)

这非常有意义,因为当您将资源转换为字符串时会发生这种情况.文档错了吗?我尝试用主机,用户名和主机替换资源,但这也不起作用.我知道路径是正确的,因为我可以从命令行运行SFTP,它工作正常.

有没有其他人尝试过使用SFTP的SSH2扩展?我错过了一些明显的东西吗?

更新:

我在内部的另一台机器上安装了sftp,它运行得很好.所以,我试图连接到的服务器必须有一些不起作用.

php ssh sftp wrapper

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

在(据称)高性能代码中使用GetCurrentMethod

出于记录目的,我们的应用程序中的一些方法包括以下行:

Dim Log As ILog = GetLog(Reflection.MethodBase.GetCurrentMethod().DeclaringType)
Run Code Online (Sandbox Code Playgroud)

我有可能被描述为对反思的非理性恐惧,我试图控制它.但是,在每秒执行一百次的方法中,这样的调用会引起我的注意.我不太了解反思; 但是从简要介绍文档来看,我认为我可以用以下内容替换以下内容:

Dim Log As ILog = GetLog(Me.GetType())
Run Code Online (Sandbox Code Playgroud)

我的问题有三方面:

  1. 是否Me.GetType()实际上返回相同TypeGetCurrentMethod().DeclaringType
  2. 是否Me.GetType()实际上做任何事情不同GetCurrentMethod().DeclaringType,或者是做引擎盖下是一回事吗?
  3. 我根本不应该担心这个吗?性能在此应用中至关重要; 该程序运行良好,但我们的业务性质是这样的,如果我们可以在这里和那里削减甚至几微秒,这是有用的.

.net vb.net reflection performance gettype

6
推荐指数
2
解决办法
8482
查看次数

使用psycopg2/Python DB-API和PostgreSQL进行参数化查询

使psycopg2将参数化查询传递给PostgreSQL的最佳方法是什么?我不想编写自己的escpaing机制或适配器,psycopg2源代码和示例很难在Web浏览器中阅读.

如果我需要切换到类似PyGreSQL或其他python pg适配器的东西,那对我来说没问题.我只想要简单的参数化.

python postgresql psycopg2

43
推荐指数
3
解决办法
4万
查看次数

C++相当于Java ByteBuffer?

我正在寻找Java ByteBuffer的C++"等价物".

我可能错过了显而易见的或只是需要一个孤立的用法示例来澄清.我已经浏览了iostream系列,看起来它可能提供了基础.具体来说,我希望能够:

  • 从字节数组/点构建缓冲区并从缓冲区中获取基元,例如getByte,getInt
  • 使用基元构建缓冲区,例如putByte,putInt,然后获取字节数组/指针.

c++ java bytebuffer

22
推荐指数
3
解决办法
3万
查看次数

删除目录vb6中的所有文件

我想知道是否有人可以帮助我使用vb6函数来删除目录中的所有文件(不包括子目录).

vb6 file-io delete-file

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

VB6和源安全

我们有多个开发人员在相同的代码库上工作.我们也在尝试使用SourceSafe(6.0)

当一个开发人员对其本地副本进行代码更改时,我们会在此版本的已更改对象列表中进行注释.

在编译我们的下一个版本时,我们打开"主"副本,将所有更改从SourceSafe更新到主副本,然后编译.

此时,所有其他开发人员代码现在与主副本不同步,我们需要将所有更改推送到所有开发人员本地副本,因此我们都在查看相同版本的源代码.开始新的发布周期.

有没有办法让SourceSafe用最新的更改更新本地副本,或者我们是否需要手动完成基于已更改对象的列表(这是我们现在正在做的...)请不要告诉我使用"获取最新版本".它一次只能在一个文件上运行,并且是我们现在正在使用的过程.

谢谢

vb6 visual-sourcesafe

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