小编Hel*_*lgi的帖子

一个表单可以有两个提交按钮吗?

我正在使用 web2py 编写类似应用程序的搜索引擎。是否可以为一个表单实现两个提交按钮,例如谷歌有两个按钮“搜索”和“我很幸运”。提前致谢。

html python web2py

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

Filehandles和XML :: Simple - >内存损坏.无法隔离问题

在一个小测试文件中,我可以运行

#!/usr/bin/perl
use warnings;
use strict;
use open qw{:utf8 :std};
use XML::Simple;

my @cmdline = ("hg", "log", "-v", "--style", "xml");
open my $xml, "@cmdline |";

my $xmllog = XMLin($xml, ForceArray => ['logentry', 'parent', 'copy', 'path']);

foreach my $rev (@{$xmllog->{logentry}}) {
    #do stuff
}
Run Code Online (Sandbox Code Playgroud)

它工作正常.当我在一个更大的程序中运行相同的代码(使用相同的XML输入)时,它终止于

*** glibc detected *** /usr/bin/perl: malloc(): memory corruption: 0x0a40e308 ***
Run Code Online (Sandbox Code Playgroud)

(完全崩溃日志@ pastebin.com)

但是,如果我做交换

#open my $xml, "@cmdline |";
my $xml = `@cmdline`;
Run Code Online (Sandbox Code Playgroud)

然后它工作(在两个文件中),所以这更像是一个好奇的问题,而不是一个真正的问题.

  1. 有没有人对我的测试用例和更大的代码库之间的差异有什么指示?
  2. 有速度/记忆/?不同命令调用的区别?最佳做法?

Debian Sid:Perl 5.12.4-1.

(这是我第一次遇到Perl,所以不要过多地考虑我应该对语言的了解.我只是潜入现有代码.)

(较大的程序是ikiwiki,所以代码不是秘密,但我不知道在哪里寻找麻烦,并且由于实际原因我不能在这篇文章中包含所有代码.这涉及Mercurial后端.)


根据cjm的建议,我添加了print …

perl ikiwiki

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

如何在web.py中上传图像并将其保存到磁盘

我需要创建一个表单并让表单上传图像并将其保存到我的磁盘.这是我的代码

import web

urls = (
'/hello', 'Index',
'/file_upload_form', 'ThatFile'
)

app = web.application(urls, globals())

render = web.template.render('templates/', base = "layout")

class ThatFile(object):
    def GET(self):
        return render.file_upload_form()

    def POST(self):
        form = web.input(image = "loc")
        open(form.image,'r')
        image_o = form.image.read()
        return render.thatfile(o_image = o_image)

class Index(object):
    def GET(self):
        return render.hello_form()

    def POST(self):
        form = web.input(name = "Nobody", greet = None)
        greeting = "%s, %s" % (form.greet, form.name)
        return render.index(greeting = greeting)

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)

我尝试过使用PIL Image模块,但它不显示图像.

python upload web.py

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

这个linq表达式创建有什么问题(使用contains)

我试图用contains运算符动态创建一个linq表达式.

在阅读了与此主题相关的几篇帖子后,我提出了以下代码,允许我执行"包含"评估:

internal static Expression<Func<TEntity, bool>> StringContains<TEntity>(string propertyName, string subString)
{
    MethodInfo contains = typeof(JsonLinqParser_Paser).GetMethod("Like");
    var param = Expression.Parameter(typeof(TEntity));
    var body = Expression.Call(contains, Expression.Property(param, propertyName), Expression.Constant(subString, typeof(string)));

    var lambda = Expression.Lambda<Func<TEntity, bool>>(body, param);

    return lambda;
}
public static bool Like(string a, string b)
{
    return a.Contains(b);
}
Run Code Online (Sandbox Code Playgroud)

这就是这样称呼的:

var expression = Expression.Lambda<Func<TEntity, bool>>(StringContains<TEntity>("FIPSCO_STR", _myStringValue), param);
Run Code Online (Sandbox Code Playgroud)

但是,在运行时,我收到如下错误:

类型'System.Func`2 [DAL.BestAvailableFIP,System.Boolean]'的表达式不能用于返回类型'System.Boolean'

其中"DAL.BestAvailableFIP"是"TEntity"类型.

我确信这与我对lambda表达式缺乏了解有关.谁能告诉我我做错了什么?

c# lambda linq-expressions

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

Mercurial中克隆和拉动的区别

克隆和拉动,这些操作在功能上都相似,那么使用克隆而不是拉有意义吗?我的意思是,如果可以通过拉动现有的回购来实现相同的东西,为什么我应该使用克隆.


一个团队正在开发一些应用程序,后来又有一个新用户说user2分配给该应用程序,然后克隆现有的repo或拉动现有的repo用于新的条目(user2),哪个更好?比较黑白克隆/拉

mercurial tortoisehg

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

如何在bottlepy中呈现元组

我一直在使用bottlepy,我有这样的事情:

..code..
comments = [(u'34782439', 78438845, 6, u'hello im nick'), 
(u'34754554', 7843545, 5, u'hello im john'), 
(u'332432434', 785345545, 3, u'hello im phil')] 

return comments
Run Code Online (Sandbox Code Playgroud)

在视图中我做了这个:

%for address date user text in comments:
      <h3>{{address}}</h3>
      <h3>{{date}}</h3>
      <h3>{{user}}</h3>
      <h3>{{text}}</h3>
%end
Run Code Online (Sandbox Code Playgroud)

当我启动服务器时,错误是:

Error 500: Internal Server Error

Sorry, the requested URL http://localhost:8080/hello caused an error:

Unsupported response type: <type 'tuple'>
Run Code Online (Sandbox Code Playgroud)

我怎么能把它渲染到视图中?

(对不起我的英文)

python templates bottle

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

从存储库同步中删除/ bin文件夹

我正在使用BitBucket在线存储库.我打开了一个新的存储库并在我的计算机上同步了一些文件夹(带有tortoisehg),然后在该文件夹中打开了一个eclipse项目.

现在,当我想要提交时,/ bin文件夹也正在同步...显然我不希望发生这种情况,我想要的是同步/ src和/ test.

有人可以帮我这个.

谢谢.

java mercurial repository tortoisehg

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

在Python中实现运算符优先级的一般方法是什么

假设我想编写一个相当简单的编程语言,我想实现像2 + 3*2 = 8这样的运算符

实现这样的事情的一般方法是什么?

python algorithm parsing programming-languages

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

省略尾部斜杠时,未在Bottle应用程序中加载静态文件

我正在使用Bottle通过apache提供测试文件.

以下是我的apache配置:

WSGIDaemonProcess temp user=www-data group=www-data processes=1 threads=5
WSGIScriptAlias /temp /opt/gridops/usage/temp/adapter.wsgi

<Directory /opt/gridops/usage/temp>
        WSGIProcessGroup temp
        WSGIApplicationGroup %{GLOBAL}
        Order deny,allow
        Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)

adapter.wsgi:

import os,sys
os.chdir(os.path.dirname(__file__))
sys.path = ['/opt/gridops/usage/temp'] + sys.path
os.chdir(os.path.dirname(__file__))
sys.stdout = sys.stderr
import bottle
print "++"*10
import index # This loads your application
application = bottle.default_app()
Run Code Online (Sandbox Code Playgroud)

index.py:

from bottle import mount, run 
from routes import app
from bottle import default_app
default_app.push(app)
#run()
#run(app=app, host='192.168.1.3', port=8085) 
Run Code Online (Sandbox Code Playgroud)

routes.py:

from bottle import Bottle , run,route,static_file,view,template,post,request

app …
Run Code Online (Sandbox Code Playgroud)

python apache bottle

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

Bottle app不会处理放入包中单独模块的路径

我有这个目录结构:

.
??? controller
?   ??? FooController.py
?   ??? __init__.py
?
??? main.py
Run Code Online (Sandbox Code Playgroud)

FooController:

from bottle import get, post, request, response, run, abort, \
                   redirect, LocalResponse
import json

@get('/')
def create():
    response.content_type = 'application/json'
    return json.dumps({'hello2' : 'world'})
Run Code Online (Sandbox Code Playgroud)

我执行python main.py,其中包含:

from controller import *
from bottle import get, post, request, response, run, abort, \
                   redirect, LocalResponse

if __name__ == '__main__':
    run(host = 'localhost', port = 8080)
Run Code Online (Sandbox Code Playgroud)

我希望通过导入所有控制器(在这种情况下FooController),它将挂钩到框架.但是当我去localhost时它不会:8080 /我收到404错误.如果我将所有路线都放入main.py,它就可以了.

有谁知道我怎么能完成我正在寻找的东西?

python bottle

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

确定Python 3中某些内容的索引

我是python的新手,我想知道是否有办法在python中识别某些东西的索引位置?

例如,如果我有一个由字母az组成的字符串,并且我要求用户输入一个字母,有没有办法让程序识别字母"f"在字母串中的索引为5?

python string indexing

0
推荐指数
2
解决办法
6444
查看次数