假设您正在一个维护大量内部python库(鸡蛋)的团队中,无论出于何种原因,将它们上传到pypi都不是一种选择.你怎么能主持库(鸡蛋),以便easy_install仍然可以为你的团队成员工作?
基本上如果这个工作会很酷....
(someproj)uberdev@hackmo:~$ easy_install myproprietary.lib-dev
user: uberdev
password:...
fetching......
Searching for myproprietary.lib-dev
Reading http://dev.mycompany.corp/myproprietary.lib-dev
Reading http://dev.mycompany.corp
Reading http://dev.mycompany.corp/dist
Best match: myproprietary.lib-dev
Downloading http://dev.mycompany.corp/dist/myproprietary.lib-dev
Run Code Online (Sandbox Code Playgroud)
我想有一些可以安装的服务器,但我很欣赏专家对此事的一些指导.
谢谢
我无法弄清楚如何使用带有MySQL 5的SqlAlchemy 0.6.0在UNIQUE列上设置AUTO_INCREMENT.
我知道这可以在MySQL中完成,但我不想分发额外的.sql脚本来为我的应用程序设置数据库.我希望SqlAlchemy从Python中构建模式.
到目前为止,我发现有两种方法可以使列成为SqlAlchemy中的自动递增类型列:
sqlalchemy.types.Integer
表中第一列在其定义中设置primary_key=True
和未autoincrement=False
设置的列.
INDEX(m,n)
为列添加属性.SERIAL
列类型.AUTO_INCREMENT
属性添加到列.sqlalchemy.types.Integer
列,并以sqlalchemy.schema.Sequence
对象作为参数进行实例化.
INDEX(m,n)
为列添加属性.SERIAL
列类型.所以我不能使用#1,因为我想要auto_increment的列不在主键中(也不应该).我不能使用#2,因为它不适用于MySQL.
基本上,我定义表的代码如下所示:
from sqlalchemy import Column
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.schema import Sequence
from sqlalchemy.types import Integer, Unicode
Base = declarative_base()
class Person(Base):
__tablename__ = "person"
id = Column(Integer, nullable=False, unique=True)
first_name = Column(Unicode(100), nullable=False, primary_key=True)
last_name = Column(Unicode(100), nullable=False, primary_key=True)
Run Code Online (Sandbox Code Playgroud)
并生成此SQL来创建表:
CREATE TABLE person ( …
Run Code Online (Sandbox Code Playgroud) 今天我一直在尝试将更多与Python相关的模式带入我的Emacs配置中,但我没有太多运气.
首先我注意到的是,根据Emacs的启动方式(终端vs桌面),它决定使用的解释器是不同的.
从KDE菜单启动:M-! which python给出/usr/bin/python
从终端发起:M-! which python给出~/local/bin/python
我可以接受这个,因为我的.bashrc将〜/ local/bin附加 到路径上,我猜KDE默认忽略它.我可以解决这个问题,但是我不明白的是,如果我激活virtualenv,我会期望M-!哪个python指向 〜/ project.env/bin/python但是它仍然指向〜/ local/bin/python.
因此,当我M-x py-shell,我得到〜/ local/bin/python所以如果我尝试 M-x py-execute-buffer在virtualenv中的一个包中驻留的模块,py-shell会抱怨在virtualenv中也不知道模块.
将py-python-command设置为"〜/ project.env/bin/python"似乎在加载所有内容后无效.
所以我想我的问题的总体症结是,如何让所有与python相关的emacs东西指向正确的解释器?
我使用emacs来满足我的所有代码编辑需求.通常情况下,我会使用Mx编译来运行我的测试运行器,我会说我得到了大约70%的我需要做的事情,以保持代码正常,但最近我一直想知道如何使用Mx pdb打破断点并检查事情会很好的场合.
在我的谷歌搜索中,我发现了一些表明这是有用/可能的事情.但是我还没有设法让它以我完全理解的方式运作.
我不知道是否是buildout + appengine的组合可能会让它变得更加困难但是当我尝试做类似的事情时
M-x pdb
Run pdb (like this): /Users/twillis/projects/hydrant/bin/python /Users/twillis/bin/pdb /Users/twillis/projects/hydrant/bin/devappserver /Users/twillis/projects/hydrant/parts/hydrant-app/
Run Code Online (Sandbox Code Playgroud)
其中.../bin/python是解释器buildout使用为所有egg设置的路径.
〜/ bin/pdb是一个使用当前python解释器调用pdb.main的简单脚本
HellooKitty:hydrant twillis$ cat ~/bin/pdb
#! /usr/bin/env python
if __name__ == "__main__":
import sys
sys.version_info
import pdb
pdb.main()
HellooKitty:hydrant twillis$
Run Code Online (Sandbox Code Playgroud)
.../bin/devappserver是buildout配方为gae项目制作的dev_appserver脚本,而.../parts/hydrant-app是app.yaml的路径
我第一次收到提示
Current directory is /Users/twillis/bin/
C-c C-f
Run Code Online (Sandbox Code Playgroud)
什么都没发生,但是
HellooKitty:hydrant twillis$ ps aux | grep pdb
twillis 469 100.0 1.6 168488 67188 s002 Rs+ 1:03PM 0:52.19 /usr/local/bin/python2.5 /Users/twillis/projects/hydrant/bin/python /Users/twillis/bin/pdb /Users/twillis/projects/hydrant/bin/devappserver /Users/twillis/projects/hydrant/parts/hydrant-app/
twillis 477 0.0 0.0 2435120 420 s000 …
Run Code Online (Sandbox Code Playgroud) 我在programmers.stackexchange.com上发布了这个,但我认为它可能更适合SO.
我使用emacs来满足我的所有代码编辑需求.通常情况下,我会使用Mx编译来运行我的测试运行器,我会说我得到了大约70%的我需要做的事情,以保持代码正常,但最近我一直想知道如何使用Mx pdb打破断点并检查事情会很好的场合.
在我的谷歌搜索中,我发现了一些表明这是有用/可能的事情.但是我还没有设法让它以我完全理解的方式运作.
我不知道是否是buildout + appengine的组合可能会让它变得更加困难但是当我尝试做类似的事情时
M-x pdb
Run pdb (like this): /Users/twillis/projects/hydrant/bin/python /Users/twillis/bin/pdb /Users/twillis/projects/hydrant/bin/devappserver /Users/twillis/projects/hydrant/parts/hydrant-app/
Run Code Online (Sandbox Code Playgroud)
其中.../bin/python是解释器buildout使用为所有egg设置的路径.
〜/ bin/pdb是一个使用当前python解释器调用pdb.main的简单脚本
HellooKitty:hydrant twillis$ cat ~/bin/pdb
#! /usr/bin/env python
if __name__ == "__main__":
import sys
sys.version_info
import pdb
pdb.main()
HellooKitty:hydrant twillis$
Run Code Online (Sandbox Code Playgroud)
.../bin/devappserver是buildout配方为gae项目制作的dev_appserver脚本,而.../parts/hydrant-app是app.yaml的路径
我第一次收到提示
Current directory is /Users/twillis/bin/
C-c C-f
Run Code Online (Sandbox Code Playgroud)
什么都没发生,但是
HellooKitty:hydrant twillis$ ps aux | grep pdb
twillis 469 100.0 1.6 168488 67188 s002 Rs+ 1:03PM 0:52.19 /usr/local/bin/python2.5 /Users/twillis/projects/hydrant/bin/python /Users/twillis/bin/pdb /Users/twillis/projects/hydrant/bin/devappserver /Users/twillis/projects/hydrant/parts/hydrant-app/
twillis 477 0.0 0.0 …
Run Code Online (Sandbox Code Playgroud)