问题列表 - 第12525页

这是避免使用SQLAlchemy/SQLObject的好方法吗?

我没有使用ORM,而是在没有ORM(SQLObject/SQLAlchemy)的Python和MySQL中考虑以下方法.我想得到一些关于这似乎是否可能产生任何负面长期后果的反馈,因为从短期来看,从我所知道的情况来看似乎很好.

而不是将数据库中的行转换为对象:

  • 每个表由一个类表示
  • 将行检索为dict
  • 表示游标的对象提供对表的访问,如下所示:

    cursor.mytable.get_by_ids(低,高)

  • 删除意味着将time_of_removal设置为当前时间

因此,基本上这消除了对ORM的需要,因为每个表都有一个类来表示它,并且在该类中,单独的dict表示每一行.

类型映射是微不足道的,因为每个dict(行)是python/blub中的第一个类对象,允许您知道对象的类,此外,Python中的低级数据库库处理字段级别的类型转换为他们适当的应用程序级类型.

如果你发现沿着这条路走下去的任何潜在问题,请告诉我.谢谢.

python sqlalchemy sqlobject

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

如何在实时网站上查看PHP

是否可以查看实时网站的PHP代码?

php security

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

在Control.Invoke期间需要设置多个属性

我一直在搜索stackoverflow,以便将数据从一个线程编组回到UI线程,并在3.5中找到了各种方法.

对我来说更优雅的解决方案之一; 虽然我还在学习lambdas和闭包,但这个解决方案Control.Invoke带有输入参数.

我不完全理解代码,但我确实理解如何使用它,它并没有完全解决我的问题.

我想调用invoke并将字符串传递给另一个方法(DisplayStatusUpdate(msg)).任何指针将不胜感激.

    private void FireEventAppender_OnMessageLogged(object sender, MessageLoggedEventArgs e)
    {
        DisplayStatusUpdate(e.LoggingEvent.RenderedMessage);
    }

    private void DisplayStatusUpdate(string text)
    {
         _StatusTextBox.Text = _StatusTextBox.Text + text;
         _StatusTextBox.Text = String.Format("{0}\r\n", _StatusTextBox.Text);
         _StatusTextBox.SelectionStart = _StatusTextBox.Text.Length - 1;
         _StatusTextBox.ScrollToCaret();
    }
Run Code Online (Sandbox Code Playgroud)

c# invoke

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

Zend框架选择对象和UNION()

我很确定这在Zend Framework中是不可能的(我已经搜索过Web,文档和问题跟踪器),但我只是想确定一下,我在这里问.

$select = $this->select();
$select->union($select1, $select2);
Run Code Online (Sandbox Code Playgroud)

那当然不行.解释我需要什么.我需要使用UNION()在SELECT查询中合并2个表,我知道我可以这样做:

$select = "$select1 UNION $select2";
Run Code Online (Sandbox Code Playgroud)

问题是会返回一个字符串,我需要一个select对象,所以我可以使用它与Zend_Paginator.

我已经通过修改我的数据库架构解决了这个问题,但我只是好奇是否有一些解决方法.

php mysql union select zend-framework

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

在现代Python中声明自定义异常的正确方法?

在现代Python中声明自定义异常类的正确方法是什么?我的主要目标是遵循标准的其他异常类,因此(例如)我在异常中包含的任何额外字符串都会被捕获异常的任何工具打印出来.

通过"现代Python",我指的是将在Python 2.5中运行的东西,但对于Python 2.6和Python 3*的处理方式来说是"正确的".而"自定义"我指的是一个Exception对象,它可以包含有关错误原因的额外数据:一个字符串,也许还有一些与异常相关的任意对象.

我被Python 2.6.2中的以下弃用警告绊倒了:

>>> class MyError(Exception):
...     def __init__(self, message):
...         self.message = message
... 
>>> MyError("foo")
_sandbox.py:3: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
Run Code Online (Sandbox Code Playgroud)

看起来很疯狂,BaseException对于名为的属性具有特殊含义message.我从PEP-352收集到该属性确实在2.5中有特殊含义他们试图弃用,所以我猜这个名字(而且仅此一个)现在被禁止了?啊.

我也模糊地意识到它Exception有一些神奇的参数args,但我从来不知道如何使用它.我也不确定这是向前发展的正确方法; 我在网上发现的很多讨论都表明他们试图在Python 3中废除args.

更新:两个答案建议覆盖__init__,和__str__/ __unicode__/ __repr__.这似乎很多打字,是否有必要?

python exception custom-exceptions

1176
推荐指数
11
解决办法
60万
查看次数

在PHP中确定缩短的URL的最终目的地?

我怎么能用PHP做到这一点?例如

bit.ly/f00b4r ==> http://www.google.com/search?q=cute+kittens

在Java中,解决方案是这样的:

您应该使用HttpWebRequest实例向URL发出HEAD请求.在返回的HttpWebResponse中,检查ResponseUri.

只需确保HttpWebRequest实例上的AllowAutoRedirect设置为true(默认情况下为true).(Thx,casperOne)

代码是

private static string GetRealUrl(string url)
{
    WebRequest request = WebRequest.Create(url);
    request.Method = WebRequestMethods.Http.Head;
    WebResponse response = request.GetResponse();
    return response.ResponseUri.ToString();
}
Run Code Online (Sandbox Code Playgroud)

(Thx,Fredrik Mork)

但我想用PHP来做.如何?:)

php url-routing bit.ly

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

将Markdown/Textile转换为HTML(以及理想情况下,返回Markdown/Textile)的Javascript

Markdown/Textile 有几个很好的Javascript 编辑器(例如:http://attacklab.net/showdown/,我现在正在使用的那个),但我只需要一个Javascript函数来转换来自Markdown/Textile的字符串 - > HTML和返回.

最好的方法是什么?(理想情况下,它将是jQuery友好的 - 例如,$("#editor").markdown_to_html())

编辑:另一种方式是我正在寻找Rails textilize()markdown()文本助手的Javascript实现

javascript markdown jquery textile

80
推荐指数
7
解决办法
6万
查看次数

如何在运行时从外部jar访问方法?

这是发布在以下问题的延续:如何在运行时加载jar文件

我不确定如何继续方法调用级别.根据我的理解,从clazz对象,我将使用getMethod或getDeclaredMethod来获取一个Method对象,我将从该对象调用invoke.当然,调用需要一个实例.这会是示例代码中所谓的doRun吗?

我是否需要执行doRun.run()方法调用,即使我想执行一个不同于main的方法(假设它是在运行调用调用的doRun对象上的主要方法)?

为了进一步澄清原帖,我问:doRun.run()是否启动了一个新线程来执行clazz类型的类对象的实例?

感谢您帮我解决这个问题.

我确实看过"how-should-i-load-jars-dynamic-at-runtime"(抱歉,只允许一个超链接),但这看起来违反了我引用的第一篇文章中的Class.newInstance邪恶警告.

java runtime jar classloader

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

为什么C#在实现接口时不允许继承返回类型

有没有合理的理由说明为什么下面的代码在C#中不合法?

class X: IA, IB
{
    public X test() // Compliation Error, saying that X is not IB
    {
        return this;
    }
}

interface IA 
{
    IB test();
}
interface IB { };
Run Code Online (Sandbox Code Playgroud)

.net c#

23
推荐指数
3
解决办法
3179
查看次数

在重新排序或删除行时更新交替的彩色UITableViewCell

我有一个UITableView与交替着色的UITableViewCells.并且可以编辑表:可以重新排序和删除行.当行被重新排序或删除时,如何更新交替背景颜色的单元格?

我正在用它绘制交替的彩色单元格:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
    if ([indexPath row] % 2) {
        // even row
        cell.backgroundColor = evenColor;
    } else {
        // odd row
        cell.backgroundColor = oddColor;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当重新排序或删除行时,不会调用此方法.我不能[tableView reloadData]从以下方法调用,因为它在无限循环中崩溃应用程序:

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {
    // Move the object in the array
    id object = [[self.list objectAtIndex:[fromIndexPath row]] retain];
    [self.list removeObjectAtIndex:[fromIndexPath row]];
    [self.list insertObject:object atIndex:[toIndexPath row]];
    [object release];

    // Update the table ???
    [tableView reloadData]; // Crashes the app in …
Run Code Online (Sandbox Code Playgroud)

iphone uitableview

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