小编Sta*_*anM的帖子

使用Array_append在创建PostgreSQL函数时给出了语法错误

这是代码

CREATE OR REPLACE FUNCTION primes (IN   integer) RETURNS TEXT AS $$
DECLARE
    counter INTEGER = $1;
    primes int [];
    mycount int;
  BEGIN
    WHILE counter != 0 LOOP
      mycount := count(primes);
      array_append(primes [counter], mycount);
      counter := counter - 1;
    END LOOP;
    RETURN array_to_text(primes[], ',');
  END;
$$
LANGUAGE 'plpgsql'
Run Code Online (Sandbox Code Playgroud)

这是我开发主要生成函数的开始.我试图简单地让它返回数组的'count'.因此,如果我将"7"传递给函数,我应该回到[0,1,2,3,4,5,6].

但是当我尝试创建这个功能时,我得到了

SQL Error: ERROR:  syntax error at or near "array_append" LINE 1: array_append( $1  [ $2 ],  $3 )
        ^ QUERY:  array_append( $1  [ $2 ],  $3 ) CONTEXT:  SQL statement …
Run Code Online (Sandbox Code Playgroud)

arrays postgresql

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

Django无法找到我的媒体文件(在开发服务器上)

媒体目前在我的本地开发机器上.

我的MEDIA_ROOT,MEDIA_URL,ADMIN_MEDIA_PREFIX并指定如下:

MEDIA_ROOT = os.path.join(os.path.dirname(__file__), "media")
MEDIA_URL = '/media/'
SITE_URL = 'http://localhost:80'
ADMIN_MEDIA_PREFIX = '/media/admin/'
Run Code Online (Sandbox Code Playgroud)

没有'admin'文件夹,但这不应该有所作为我不认为.在urls.py文件中我有:

(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
Run Code Online (Sandbox Code Playgroud)

我不知道应该怎样做才能让它发挥作用.[我正在尝试学习django并且正在使用一个非常多毛的现有项目]

python django django-media

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

使用Django安装South的问题(没有创建south_migrationhistory表)

我似乎无法让这个工作.

我需要South为一堆应用程序进行迁移.

  1. 南下载0.7.3
  2. 解压缩,运行setup.py开发(正如它在turorial中所说)
  3. 通过转到python解释器并执行(没有错误),仔细检查以查看它是否应该在哪里

    进口南

  4. 我做

C:\Users\j\iMiCode\imi_admin>python ./manage.py syncdb
Run Code Online (Sandbox Code Playgroud)

同步...找不到固定装置.

Synced:
 > django.contrib.auth
 > django.contrib.contenttypes
 > django.contrib.sessions
 > django.contrib.sites
 > django.contrib.messages
 > django.contrib.admin

Not synced (use migrations): 
 - south (use ./manage.py migrate to migrate these)
Run Code Online (Sandbox Code Playgroud)

- 根据我的理解,南方本应该同步正确吗?在此之后我做的任何事情都抱怨我在数据库中没有south_migrationhistory表.

PS.我在Windows7上使用Django 1.2.7,python 2.6

python migration django django-south

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

Selenium Webdriver chromedriver click() 的行为与最新的 chrome 116+ 不同

我的代码在 116.0.5845.96 之前工作(我不确定这部分是否相关)

--- 编辑:我对代码做了更多测试。这不是点击的问题,而是页面本身无法正确加载。

我只是直接进入页面 - DOM 看起来并没有完全加载。其中一个下拉列表没有数据。有些点击(?)不起作用。我需要执行 Click() 两次才能真正打开我的模式。

我不知道发生了什么变化,我的脚本本身没有改变。唯一可能的变化是在 chromedriver 中,也许是我的应用程序上的某些变化,但我不知道发生了任何重大变化。

任何甚至牵强的建议都会有所帮助。我现在正抓住救命稻草。

c# selenium-chromedriver selenium-webdriver

5
推荐指数
0
解决办法
126
查看次数

我在Web服务器上运行应用程序所需的一切列表

我想知道的实际上是两件事.

第1部分:
我在python中使用Django框架开发了一个应用程序源代码.我想要的是能够在开发人员计算机上运行代码并查看结果.我需要什么?(我的猜测):Python开发enironment(Eclipse/PyDev/Aptana Studio 3似乎是更好的Windows不确定Linux),
我也有一个postgre数据库已经设置(我知道有一个文件,我必须指定连接信息)
- 从django安装的东西或者这已经包含在我的代码中?

第二部分:
我还想通过互联网访问开发服务器.
- 这是问题的主要部分,也是最重要的部分.如何发布应用程序?
- 我有一台Linux机器,我会这样做,但不确定我需要的所有东西.Apache服务器?

python django vs-web-application-project

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

使用批处理脚本快速(呃)获取文件夹大小的方法

请看下面对不同方式的一些测试比较的原始问题:


所以我到目前为止尝试了两种方法:

1.使用Windows命令行中的获取文件夹大小中的代码遍历目录:

@echo off
set size=0
for /r %%x in (folder\*) do set /a size+=%%~zx
echo %size% Bytes
Run Code Online (Sandbox Code Playgroud)

2.保存输出

'dir %folder% /s /a'  
Run Code Online (Sandbox Code Playgroud)

进入文本文件,然后读入底部的大小

我现在尝试的最后一种方法是使用du(来自MS的磁盘实用工具 - https://technet.microsoft.com/en-us/sysinternals/bb896651.aspx).


现在除#3外,这两种方式似乎都太慢了我所需要的(数以千计的文件).所以问题是哪一个是最快的/应该是最快的,如果有任何其他快速(呃)方法来获得具有100k +文件的文件夹内容的大小(并且有100个文件夹)


开始编辑:

下面是我非常hacky做比较的方法(屠宰我的程序看到一些输出)
有一些小错误,一些部分,如选项3将失败,因为它试图处理大于32位限制的数字,我是确定还有一些问题,但我认为一般的时间是明显的,除非我真的搞砸了我的逻辑.

选项I:遍历目录,使用VB脚本读取'dir'的文本输出并查找最后的大小+将其转换为MB(最初从其他地方获得它,我实际上失去了我得到它的地方选项II:迭代,使用findstr管道并直接输出结果(不转换为MB) - 来自@MC ND选项III:使用compact命令迭代 - 来自@npocmaka选项IV:来自@ user1016274 - 使用robocoby

(还有一些答案,但这些是我能够融入的答案)

这些是我得到的结果,它们相互之间非常一致,robocopy将它们吹走了

选项I和选项II通常都很接近,选项II稍微好一点(两者都在1分10秒到2分10秒之间,不确定差异来自哪里)第III部分 - 16-17分钟第IV部分 - 10-20秒

@echo OFF
setlocal enabledelayedexpansion

REM OPTION I - directory iteration
REM OPTION II - iteration with findstr pipe
REM OPTION III - compact

:MAIN
REM Initialize log filename …
Run Code Online (Sandbox Code Playgroud)

windows cmd batch-file du

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