传递!,!=,〜,<,>作为参数

我希望能够传递这样的参数:

fn(a>=b) or fn(a!=b)

我在Djangoorm和sqlacalchemy中看到了这种行为,但我不知道如何实现它。


最佳答案:

ORS使用类上的special methods来连接操作员并自定义生成的内容。
afor由b method处理,而>=调用object.__ge__()
通常,用于!=的ORM对象返回一个应用了操作的新对象,允许您链接操作,object.__ne__()函数期望这样一个ORM对象,并从中读取操作状态。

评论