问题列表 - 第46768页

Django表单验证,clean()和文件上传

有人能够确切地说明上传文件实际写入FileField中"upload_to"返回的位置的时间,特别是关于字段,模型,表单验证和清理的顺序吗?

现在我在我的模型上有一个"干净"的方法,它假设上传的文件就位,所以它可以对它进行一些验证.看起来该文件尚未保存,可能只是保存在临时位置或内存中.如果是这种情况,如果我需要执行一些外部进程/程序来验证文件,如何"打开"它或找到它的路径?

谢谢,

伊恩

django validation upload

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

无法替换字符串中的字母

我已经问了几个关于for循环的问题:

  String[] book = new String [ISBN_NUM];
  bookNum.replaceAll("-","");
  if (bookNum.length()!=ISBN_NUM)
    throw new ISBNException ("ISBN "+ bookNum + " must be 10 characters");
  for (int i=0;i<bookNum.length();i++)
  {
      if (Character.isDigit(bookNum.charAt(i)))
      book[j]=bookNum.charAt(i);  //this is the problem right here
      j++;
      if (book[9].isNotDigit()|| 
          book[9]!="x"        ||
          book[9]!="X")
      throw new ISBNException ("ISBN " + bookNum + " must contain all digits" + 
                               "or 'X' in the last position");
  }
Run Code Online (Sandbox Code Playgroud)

哪个不会编译.我从另一个问题得到的答案告诉我,错误发生的行是错误的,因为bookNum.charAt(i)是一个(不可变的)字符串,我无法将这些值转换为书籍数组.我需要做的是检查一个ISBN号(bookNum),看它是否都是数字,除了最后一位数字可以是'x'(有效的ISBN).这是最好的方法吗?如果是这样,我到底做错了什么?如果没有,用什么方法会更好?

java

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

Eclipse Helios不会在断点处停止

我最近从Eclipse Galileo升级到了Helios.Helios仅在调试"作为PHP脚本"时停止在断点处,但在调试"作为Web页面"时则不会.

当作为网页进行调试时,看起来启动调试会话的正确调试查询字符串会被添加到URL上,如下所示:

http://localhost/hello.php?XDEBUG_SESSION_START=ECLIPSE_DBGP &KEY=129798139020511

但是elipse并没有停在断点处.它只是通过代码缩放并在浏览器中显示输出.

这是我在php.ini中的xdebug配置,适用于Galileo,但不适用于Helios :(点击此处查看我的整个xdebug配置设置)

;extension=xdebug.so <-- is this needed?
zend_extension=" /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-no n-zts-20090626/xdebug.so "
xdebug.remote_enable=on
xdebug.remote_autostart=off
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.idekey=

; to enable remote debugging
zend_debugger.allow_hosts=127.0.0.1/32
zend_debugger.expose_remotely=always 
Run Code Online (Sandbox Code Playgroud)

你可以发布适用于Helios的xdebug配置吗?如果可能,您可以共享phpinfo()输出的xdebug部分吗?想要比较适用于Helios的xdebug配置的设置与我拥有的设置.

eclipse xdebug

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

可选地在Rails 3功能测试中测试缓存

通常,我希望我的功能测试不执行动作缓存.轨道似乎是在我身边,默认为config.action_controller.perform_caching = falseenvironment/test.rb.这导致正常的功能测试没有测试缓存.

那么我如何在Rails 3中测试缓存.

这个线程中提出的解决方案似乎相当hacky或者对Rails 2: 如何在rails中的功能测试中启用页面缓存?

我想做的事情如下:

test "caching of index method" do
  with_caching do
    get :index
    assert_template 'index'
    get :index
    assert_template ''
  end
end
Run Code Online (Sandbox Code Playgroud)

也许还有更好的方法来测试缓存是否被击中?

testing caching ruby-on-rails ruby-on-rails-3

18
推荐指数
3
解决办法
7585
查看次数

在程序集中编写JIT编译器

我用C编写了一个虚拟机,它对非JIT VM有很好的性能,但我想学习一些新东西,并提高性能.我当前的实现只是使用一个开关从VM字节码转换为指令,并将其编译为跳转表.就像我说的那样,它的性能不错,但是我遇到了一个只能用JIT编译器克服的障碍.

不久前我已经问了一个关于自我修改代码的类似问题,但我开始意识到我并没有问正确的问题.

所以我的目标是为这个C虚拟机编写一个JIT编译器,我想在x86汇编中完成它.(我使用NASM作为我的汇编程序)我不太确定如何去做这个.我对汇编感到满意,并且我已经查看了一些自我修改的代码示例,但我还没有弄清楚如何进行代码生成.

到目前为止,我的主要部分是使用我的参数将指令复制到可执行的内存块.我知道我可以在NASM中标记某一行,并使用静态参数从该地址复制整行,但这不是非常动态的,并且不适用于JIT编译器.我需要能够解释字节码中的指令,将其复制到可执行内存,解释第一个参数,将其复制到内存,然后解释第二个参数,并将其复制到内存中.

我已经了解了几个可以简化这项任务的库,比如GNU闪电,甚至是LLVM.但是,在使用外部资源之前,我想首先手动编写,以了解它是如何工作的.

这个社区可以提供任何资源或示例来帮助我开始这项任务吗?一个简单的例子显示了两个或三个指令,例如"add"和"mov"用于生成可执行代码,带有参数,动态地,在内存中,会产生奇迹.

c assembly jit code-generation self-modifying

23
推荐指数
2
解决办法
5232
查看次数

如何在ASP.NET MVC 2中的所有控制器上运行函数?

我有一个功能:

  • 从模型中获取一些信息(完成)
  • 从cookie中获取一些信息(完成),以及
  • 在每个控制器上设置ViewData(在视图上)的新信息

此外,当控制器调用时,该功能需要在每个控制器上运行(我不知道如何执行此操作).

我在BaseController上编写了这个函数,但是我收到一个错误:

你调用的对象是空的.

而且,我认为这不是正确的方法.我正在使用ASP.NET MVC 2和.NET 3.5.

谢谢你的帮助.

asp.net-mvc controller

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

Python函数参数

我的代码有两个问题 - 我不知道如何将我的populateArray函数与我的main函数链接; 我不确定我需要传递什么参数另外,我一直在打开要打开的文件的文件路径 - 路径是正确的,文件存在数据.这是我的代码:

network = []  

def populateArray():
    file = open('theroute.txt', 'r')
    network = []  

    for line in file:

        network.append(line)

    print "Network = "
    print network

    file.close()

def main():    
    if __name__ == "__main__":
       populateArray()
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激!

感谢您的回复 - 我的代码现在看起来像上面,但当我删除def main()时:我收到以下错误:

File "populateArray.py", line 18
    if __name__ == "__main__":
                             ^
IndentationError: unindent does not match any outer indentation level
Run Code Online (Sandbox Code Playgroud)

python

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

性能问题:ON DUPLICATE KEY UPDATE vs UPDATE(MySQL)

INSERT INTO ON DUPLICATE KEY UPDATE和UPDATE之间是否存在性能差异?

如果我知道可以更新的值 - 我应该使用UPDATE还是真的不重要?

mysql

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

有人在Mac App Store中提交或了解使用launchd的应用程序吗?

只是想知道是否有人已成功提交应用程序或知道使用launchd的Mac App Store中存在的应用程序.

谢谢.

launchd launchdagent mac-app-store

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

断开连接后MNesia是否支持同步?

我开始构建一个具有以下要求的项目:

  • 整个系统将分布在WAN上的多个物理节点上
  • 每个节点将使用和操作一组通用的数据记录
  • 对这些记录的操作必须能够适应网络中断

我正在考虑使用Mnesia/Erlang作为这个项目的基础平台,但我想知道它(Mnesia)能够处理数据集上同时断开连接的冲突操作的情况.

一个说明性场景:

  1. 节点A和B具有连接性和空数据集.
  2. 节点A添加记录(1,ABC).
    • 这里,记录集应该透明地同步,现在节点B也有记录(1,ABC).
  3. 它们之间的网络连接丢失了.
  4. 节点A将记录改为(1,DEF).
  5. 节点B(后面的时间戳)将记录改为(1,GHI).
  6. 网络连接已恢复
    • 预期:在透明同步之后,两个节点都包含记录(1,GHI).

为简化起见,我们假设不需要完整的更改历史记录(例如,记录1用于包含ABC或DEF并不重要,它现在只包含GHI非常重要).

这是Mnesia的开箱即用(或简单实施)功能吗?

architecture erlang distributed synchronization mnesia

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