问题列表 - 第27273页

更新ImageField时如何删除旧图像?

我正在使用Django创建一个股票照片网站,我的模型中有一个ImageField,问题是当用户更新图像字段时,原始图像文件不会从硬盘中删除.

如何在更新后删除旧图像?

python django django-models

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

Python OOP和列表

我是Python的新手,它是OOP的东西,无法让它工作.这是我的代码:

class Tree:

    root = None;
    data = [];

    def __init__(self, equation):
        self.root = equation;

    def appendLeft(self, data):
        self.data.insert(0, data);

    def appendRight(self, data):
        self.data.append(data);

    def calculateLeft(self):
        result = [];
        for item in (self.getLeft()):
            if (type(item) == type(self)):
                data = item.calculateLeft();
            else:
                data = item;
            result.append(item);
        return result;

    def getLeft(self):
        return self.data;

    def getRight(self):
        data = self.data;
        data.reverse();
        return data;

tree2 = Tree("*");
tree2.appendRight(44);
tree2.appendLeft(20);

tree = Tree("+");
tree.appendRight(4);
tree.appendLeft(10);
tree.appendLeft(tree2);

print(tree.calculateLeft());
Run Code Online (Sandbox Code Playgroud)

看起来树2和树正在共享列表"数据"?

目前我希望输出像[[20,44],10,4]这样的东西,但是当我

tree.appendLeft(tree2) 
Run Code Online (Sandbox Code Playgroud)

我得到了RuntimeError: maximum recursion depth exceeded …

python class-variables

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

在非透明像素上点击检测

给定一个带有透明像素和一些非透明像素的Web上下文中的PNG,Javascript中是否有一种方法可以确定用户是否点击了非透明像素?仅限webkit的解决方案是完全可以接受的.

javascript webkit click

11
推荐指数
2
解决办法
5306
查看次数

提交点击时,Jquery自动加载gif和按钮禁用

是否可以自动显示/隐藏ajax加载gif,同时禁用/启用提交按钮?(当提交按钮是样式<a>而不是输入类型=提交时)

目前提交时我这样做:

$("#save_button_id").click(function () {
        if ($('#save_button_id').hasClass('ui-state-disabled')) return false;
        Save();
});

function Save() {
StartAjax($("#save_button_id"));
$.ajax({
        success: function (data) {
            EndAjax($("#save_button_id"));
            // etc...
        },
        error: function (xhr, status, error) {
            EndAjax($("#save_button_id"));
            // etc ...
        }
});
}

function StartAjax(button) {
    DisableButtonClick(button);
    $("#ajaxLoad").show();
}

function EndAjax(button) {
    EnableButtonClick(button);
    $("#ajaxLoad").hide();
}
Run Code Online (Sandbox Code Playgroud)

我已经看过一些地方谈论如何使用.ajaxStart()自动显示加载gif,但是是否也可以找到对点击的按钮(样式<a>标签)的引用,并自动禁用/启用它?

这一点就是不必每次都手动输入Start/EndAjax,并确保应用程序在任何地方都是一致的.

编辑

到目前为止,没有一个答案提供自动化 - 任何解决方案(如我上面的当前一个)你必须在每个$ .ajax()之前和之后手动键入开始/结束导致维护问题:很容易忘记放置开始/结束一些$ .ajax()调用旁边,如果你想稍后改变它的工作方式,你需要通过每一个来进行更改.

编辑2 - 澄清点.delegate()建议

你说"你可以将你的事件处理程序附加到任何元素" - 但我想将它附加到每个按钮元素(DRY!):所以我已经修改了你的建议的第一部分:

$('div#buttons a.ui-icon').each(function(index) {
    $(this).ajaxStart(function() {
        $("#ajaxLoad").show();
    });
});
Run Code Online (Sandbox Code Playgroud)

这解决了第一个问题,即如何显示任何按钮的加载.gif,而不必重复键入"$("#ajaxLoad").show()"到处都有$ .ajax()调用.

下一部分是如何在单击时禁用任何按钮(同样没有重复代码) - 你建议使用.delegate().但在您的示例中,每次单击按钮都会调用Save()方法.(我更改了选择器以匹配我的html) …

javascript jquery

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

需要一个好的MATLAB类教程

我在试图弄清楚如何在MATLAB中使用类时遇到了很多麻烦.我对C++和Python非常熟悉,但我无法弄清楚如何在MATLAB中定义类.有没有人知道有很多例子的非常好的资源?官方文档还有很多不足之处.

oop matlab

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

Android NDK可以实现最快的2D帧速率,包括我的尝试,更好的选择?

Android NDK可以实现最快的2D帧速率,包括我的尝试,更好的选择?

我使用NDK和OpenGL ES 2.0在GL_TRIANGLE_STRIP上将框架显示为纹理.这是在HTC Desire上完成的,与Nexus One相同.我试图加载多个GL_RGBA纹理并在纹理之间切换,因为单个纹理的正常填充率令人失望地低:

  • 1纹理:4.78 fps
  • 2纹理:19.68 fps
  • 3纹理:20.18 fps
  • 4种纹理:28.52 fps
  • 5纹理:29.01 fps
  • 6种纹理:30.32 fps

我认为即使30.32 fps RGBA仍然太慢.

那么这是实现最快2D帧速率(具有相同质量)的方法吗?有什么建议可以加快速度吗?

这是相关代码,它基于hello-gl2 NDK示例:

=== GL2JNIView.java:

init(false, 0, 0);
ConfigChooser(5, 6, 5, 0, depth, stencil);
Run Code Online (Sandbox Code Playgroud)

=== gl_code.cpp:

#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>

#include <android/log.h>

#include <stdlib.h>
#include <time.h>

typedef unsigned char byte;

static int view_width, view_height;
static byte* framebuffer;
static int framebuffer_size;
static GLuint texture_id[6];
static const char* vertexSrc =
 "precision highp float;\n"
 "precision highp int;\n"
 "attribute vec4 vertexCoords;\n"
 "attribute …
Run Code Online (Sandbox Code Playgroud)

video android frame-rate opengl-es glteximage2d

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

Google Search Appliance/Mini可以输出JSON/JSONP吗?

将Google Mini用于需要以JSON/JSONP格式从Google Mini输出的网站,以便进行前端查询.Google Mini确实发布了一个可能被中间进程用于转换为JSON/JSONP的XML Feed.

Google Search Appliance/Mini可以使用插件,修改XSLT模板或其他未知方法输出到JSON/JSONP吗?

发现解决方案

  1. 似乎在挖掘code.google.com时发现,GSA/Mini没有使用XSLT创建Feed的JSON/JSONP格式输出方法.这是创建此XSLT以进行转换的问题.
  2. 其他选择是使用可用技术(PHP?)创建服务器端脚本以从GSA/Mini检索XML,并根据前端(AJAX)的请求将feed转换为JSONP.下行是此次通话中增加的开销.

2010年10月8日更新

创建了一个生成JSONP响应的Google Mini前端.

javascript xslt json google-search-appliance

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

替换Python字符串中的反斜杠

我有一些代码来加密Python中的一些字符串.加密文本在某些网址中用作参数,但在加密后,字符串中会出现反斜杠,我不能在urllib2.urlopen中使用单反斜杠.

我不能用double取代单反斜杠.例如:

print cipherText 

'\t3-@\xab7+\xc7\x93H\xdc\xd1\x13G\xe1\xfb'

print cipherText.replace('\\','\\\\')

'\t3-@\xab7+\xc7\x93H\xdc\xd1\x13G\xe1\xfb'
Run Code Online (Sandbox Code Playgroud)

在替换语句中将r放在\前面也没有用.

我想做的就是调用那种网址:

http://awebsite.me/main?param="\t3-@\xab7+\xc7\x93H\xdc\xd1\x13G\xe1\xfb"
Run Code Online (Sandbox Code Playgroud)

此网址也可以成功调用:

http://awebsite.me/main?param="\\t3-@\\xab7+\\xc7\\x93H\\xdc\\xd1\\x13G\\xe1\\xfb"
Run Code Online (Sandbox Code Playgroud)

python string replace backslash

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

如何使用.htaccess规则将.php重写为.html?

我想使用规则将.php扩展.html名转换为扩展名.htaccess

这是我可以做的事情,如果是这样,怎么样?

.htaccess mod-rewrite

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

关于C#"使用"语句的样式/可读性问题

我想知道你对我所涉及的编码风格问题的看法.我意识到可能没有明确的答案,但我想看看在一个方向或另一个方向是否有强烈的偏好.

我正在通过一个解决方案using在很多地方添加语句.我常常会遇到这样的事情:

{
    log = new log();
    log.SomeProperty = something;  // several of these
    log.Connection = new OracleConnection("...");
    log.InsertData(); // this is where log.Connection will be used
    ... // do other stuff with log, but connection won't be used again
}
Run Code Online (Sandbox Code Playgroud)

其中log.Connection是OracleConnection,它实现了IDisposable.

在我的neatnik想要改变它:

{
    using (OracleConnection connection = new OracleConnection("..."))
    {
        log = new log();
        log.SomeProperty = something;
        log.Connection = conn;
        log.InsertData();
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,简洁的爱好者和稍微快速完成工作的人希望这样做:

{
    log = new log();
    log.SomeProperty = something; 
    using (log.Connection = new …
Run Code Online (Sandbox Code Playgroud)

c# coding-style using-statement

7
推荐指数
2
解决办法
308
查看次数