我正在编写一个快速而脏的维护脚本来删除一些行,并希望避免从主项目中删除我的ORM类/映射.我有一个看起来类似于的查询:
address_table = Table('address',metadata,autoload=True)
addresses = session.query(addresses_table).filter(addresses_table.c.retired == 1)
Run Code Online (Sandbox Code Playgroud)
根据我读过的所有内容,如果我使用的是ORM(不是'只是'表)并传递了类似的内容:
addresses = session.query(Addresses).filter(addresses_table.c.retired == 1)
Run Code Online (Sandbox Code Playgroud)
我可以.delete()
在查询中添加一个,但是当我尝试仅使用表格时,我会收到投诉:
File "/usr/local/lib/python2.6/dist-packages/sqlalchemy/orm/query.py", line 2146, in delete
target_cls = self._mapper_zero().class_
AttributeError: 'NoneType' object has no attribute 'class_'
Run Code Online (Sandbox Code Playgroud)
这是一个有意义的表,而不是一个类.在谈到SQLAlchemy时,我非常环保,我该怎么做呢?
我最近使用的库转换为.framework分发.
在我现有的CMake文件中,我已成功将其与我的iOS应用程序链接,但我得到:
dyld: Library not loaded: @rpath/Pizza.framework/Pizza
Referenced from: /var/mobile/Containers/Bundle/Application/D71ED298-C287-4B2F-8AFA-710A14C06D75/pizzashop.app/pizza
Reason: image not found
Run Code Online (Sandbox Code Playgroud)
当我从Xcode安装它.如果我手动将它添加到我的xcode项目,在"嵌入式二进制文件"部分,那么我很好(见下图)
所以我得出结论,问题是将.framework放入我的应用程序包中.我已经遇到过这个问题并查看了链接的QT示例,但我仍然试图在这里定位自己,因为我发现语法有点不透明.
CMake的BundleUtilities是我想在这里使用的吗?在查看BundleUtilities示例时,我有点迷失:
set(APPS ...) # paths to executables
set(DIRS ...) # directories to search for prerequisites
INSTALL(CODE "
include(BundleUtilities)
fixup_bundle(\"${APPS}\" \"\" \"${DIRS}\")
" COMPONENT Runtime)
Run Code Online (Sandbox Code Playgroud)
这是OSX特定的,还是可以像iOS一样应用它?
这个让我有些困惑.对于龙卷风和蟒蛇的线程来说还是比较新的,所以我可以完全脱离我想要做的事情.
可能最好从一些简化的代码开始:
class Handler(tornado.web.RequestHandler):
def perform(self):
#do something cuz hey, we're in a thread!
def initialize(self):
self.thread = None
@tornado.web.asynchronous
def post(self):
self.thread = threading.Thread(target=self.perform)
self.thread.start()
self.write('In the request')
self.finish()
def on_connection_close(self):
logging.info('In on_connection_close()')
if self.thread:
logging.info('Joining thread: %s' % (self.thread.name))
self.thread.join()
Run Code Online (Sandbox Code Playgroud)
我的问题是on_connection_close
永远不会被调用,请求处理得很好.其次,我是否正在以这种方式引入线程?
我正在为编写一个扑克评估库以获得乐趣,我希望为一组给定的卡片添加测试绘图(开放式,内容式)的能力.
只是想知道"最先进的"是什么?我试图保持我的记忆足迹合理,所以使用查找表的想法并不好,但可能是一个必要的邪恶.
我目前的计划是:
我希望能够做到更好的复杂性,因为使用我的方法,7张卡或9张卡片会使事情停止.
任何输入和/或更好的想法将不胜感激.
在我为GAE编写的一些代码中,我需要定期对另一个系统上的URL执行GET,实质上是"ping"它,如果请求失败,超时或成功,我并不十分担心.
因为我基本上想要"发射并忘记"而不是通过等待请求减慢我自己的代码,我使用的是异步urlfetch,而不是调用get_result().
在我的日志中,我收到警告:
找到1个没有匹配响应的RPC请求(可能是由于超时或其他错误)
我错过了一个明显更好的方法吗?在这个实例中,任务队列或延迟任务似乎(对我来说)过度杀伤.
任何意见都会赞赏.
可能重复:
我可以使用块来管理C++中的变量范围吗?
我遇到了一些类似的C++代码:
int main(void) {
int foo;
float qux;
/* do some stuff */
{
int bar;
bar = foo * foo;
qux = some_func(bar);
}
/* continue doing some more stuff */
}
Run Code Online (Sandbox Code Playgroud)
最初我认为也许原作者使用大括号来组合一些相关的变量,但是由于设计中的系统没有丰富的内存,我认为作者可能有意图使用bar的范围解析和任何变量离开而不是把它们放在整个封闭(foo)的范围内.
有什么理由这样做吗?在我看来,这应该是不必要的,任何现代编译器都不需要这样做?
我仍然围绕着Objective-C的内存管理的一些细微差别,并提出了以下我不确定的案例:
+ (NSDecimalNumber*)factorial: (NSDecimalNumber *)l {
NSDecimalNumber *index = l;
NSDecimalNumber *running = [NSDecimalNumber one];
for (; [index intValue] > 1; index = [index decimalNumberBySubtracting:[NSDecimalNumber one]]) {
running = [running decimalNumberByMultiplyingBy: index];
}
return running;
}
Run Code Online (Sandbox Code Playgroud)
这里的decimalNumberByMultiplyingBy和decimalNumberBySubtracting将创建很多NSDecimalNumbers,最终将根据我的理解自动释放,但我担心,直到那时包含的程序将挂起大量的内存.
我应该在某个地方引入自动释放池吗?(如果是这样的话?)这会对性能产生明显的影响(与使用的这么多内存的副作用相比)吗?
自动释放正确的机制在这里使用?我应该看看打破循环并手动释放内存,因为我已经完成了它?
这可能是一个n00b问题,但我正试图了解这种情况下的最佳实践.
这是我第二次实现这样的东西,我怀疑必须有一个更好的(阅读:更pythonic)方式来做到这一点:
phone_book = {}
def add_number(name,number):
if name in phone_book:
phone_book['name'].append(number)
else:
phone_book['name'] = [number]
Run Code Online (Sandbox Code Playgroud)
我意识到代码可能会通过条件赋值变得更简洁,但我怀疑可能有更好的方法来解决这个问题.我只对缩短代码感兴趣.
给定一个针对其预期负载进行合理配置的PostgreSQL 数据库,哪些因素将有助于选择外部/中间件连接池(即 pgBouncer、pgPool)与客户端连接池(HikariCP、c3p0)。最后,在什么情况下您希望同时应用客户端和外部连接池?
根据我的经验和理解,外部池的缺点是:
在研究这个问题时,我遇到过同时使用客户端和外部池的情况。这样部署的动机是什么?在我看来,这是为了获得我似乎错过的收益而加剧了大多数缺点。
postgresql database-connection connection-pooling load-balancing
想知道在Objective-C中是否存在接近C++的'const方法'的公认惯例.(C/C++背景下的语言新手)
例如:
class Foo {
public:
void canChangeMemberVars(void);
char* asString(void) const;
};
Run Code Online (Sandbox Code Playgroud)
"asString()"得到一个const this
指针,所以即使你变得流氓并决定用实例的成员捣乱它也行不通.从文档的角度来看,我发现标签方法作为const非常有用.
我正在编写一个Objective-C类库,并发现自己希望能够使特定的方法成为常量,并想知道是否有任何语言技巧来实现这一点.
总结:
在一天结束时,实现与Mutable和Immutable版本中的因子类类似的功能的唯一方法是什么?在每个方法的注释中做一个简单的注释对我的目的来说不够严格.
我最近丢失了硬盘,目前正在重建我的笔记本电脑(运行Mountain Lion)开发系统.今天下午我去安装virtualenvwrapper并遇到一些奇怪的事情阻止我安装virtualenvwrapper.
我做了以下事情:
当我使用pip-2.7安装virtualenvwrapper时,我得到以下内容(见下文).在-2.5,-2.6,-2.7后缀似乎是狮子山区新的东西吗?我尝试了没有后缀的相同过程,但这也没有用.
我发帖是因为我怀疑这里出现了一些重大问题,并希望在它成为一个更加阴险的问题之前找到它的底部.
我是否更好地下载并安装2.7的新版本,并设置我的路径来使用它?
Downloads sudo pip-2.7 install virtualenvwrapper
Requirement already satisfied (use --upgrade to upgrade): virtualenvwrapper in /Library/Python/2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Python/2.7/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /Library/Python/2.7/site-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): stevedore in /Library/Python/2.7/site-packages (from virtualenvwrapper)
Downloading/unpacking distribute (from stevedore->virtualenvwrapper)
Downloading distribute-0.6.28.tar.gz (627kB): 627kB downloaded
Running setup.py egg_info for package distribute
Installing collected packages: …
Run Code Online (Sandbox Code Playgroud) I'm having trouble getting anything I pass to CMake using -D or add_definitions() to show up when compiling the Makefiles that CMake creates.
(Summarized using a trivial example).
At the top level, I have a build.sh script, that starts with:
cmake \
-G "Unix Makefiles" \
-DPIZZA=1 \
-DCMAKE_VERBOSE_MAKEFILE=1 \
$TOPPINGS \
../../src
Run Code Online (Sandbox Code Playgroud)
$TOPPINGS is declared as -DTOPPINGS=ALL previously. I've verified it's correctly getting passed to the above. Based on the value of TOPPINGS, my CmakeLists.txt adds some more preprocessor …
我正在使用AWS IAM STS(通过boto)为我访问S3存储桶创建凭据.我对以下政策中的错误感到茫然.我尽可能简化了我的政策,但仍然得到了意想不到的结果.
当我获得用户的令牌时,我附上以下政策:
user_policy_string = r'{"Statement":[{"Effect":"Allow","Action": "s3:*","Resource":"arn:aws:s3:::*"}]}'
Run Code Online (Sandbox Code Playgroud)
这有效,但显然有点过于宽松.在缩小与这些凭据关联的权限时,我尝试使用相同的策略,但指定存储桶:
user_policy_string = r'{"Statement":[{"Effect":"Allow","Action": "s3:*","Resource":"arn:aws:s3:::buck_binary_bucket_bay-earth-d5a/*"}]}'
Run Code Online (Sandbox Code Playgroud)
我尝试访问S3时遇到403错误.基于AWS文档,我确信这是解决策略中特定存储桶的方法,因此我不知道可能导致此限制的原因.我不正确地提到水桶?
在S3控制台中,策略为空(尝试添加完全允许的策略).对于用于生成STS令牌的AWS账户,策略如下:
"Statement": [
{
"Effect": "Allow",
"Action": "sts:GetFederationToken",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "iam:GetUser",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}
]
}
Run Code Online (Sandbox Code Playgroud) python ×4
c++ ×3
cmake ×2
objective-c ×2
algorithm ×1
amazon-iam ×1
amazon-s3 ×1
asynchronous ×1
autorelease ×1
boto ×1
bucket ×1
dictionary ×1
frameworks ×1
idioms ×1
ios ×1
join ×1
low-memory ×1
makefile ×1
oop ×1
orm ×1
performance ×1
pip ×1
poker ×1
policy ×1
postgresql ×1
scope ×1
scoping ×1
setuptools ×1
sqlalchemy ×1
tornado ×1
urlfetch ×1
virtualenv ×1
xcode ×1