如何创建没有项目文件夹的项目?

发布于 2024-12-04 08:46:46 字数 290 浏览 5 评论 0原文

我是金字塔和贴纸的新手,现在只是阅读文档。我使用 virtualenv 并在 virtualenv 目录中我想启动一个金字塔项目。问题是我希望 Paster 不要创建带有项目名称的目录,而是将所有脚手架文件放在当前目录(venv 根目录)上。

我想过不使用 Paster,但我仍然不知道如何在development.ini“使用”选项上指向我的应用程序。

我也可以将 virtualenv 放在文件系统的完全不同的位置,但这对我来说似乎很奇怪(也许 virtualenvwrapper 可以使它更容易)。还有其他方法可以做到这一点吗?

I'm new to pyramid and paster, just reading the docs for now. I use virtualenv and inside the virtualenv dir I want to start a pyramid project. The problem is that I would like for paster to not create a dir with the project name, and instead put all the scaffold files on the current dir (the venv root).

I thought about just not using paster but I still wouldn't know how to point to my app on development.ini "use" option.

I could also have my virtualenv on an entirely different place of my filesystem, but that seems weird to me (maybe virtualenvwrapper could make it easier). Any other way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

尸血腥色 2024-12-11 08:46:46

起初这很令人困惑,但您的代码实际上根本不需要位于虚拟环境目录中。实际上,最好不要将代码放入您的环境中,因为您可能希望使用具有相同代码的不同环境,例如使用不同版本的 Python 或不同版本的库来测试代码。

virtualenvwrapper 确实将所有环境放在一个地方。 virtualenvwrapper 是 virtualenv 之上的一个方便的工具,但您不需要它来将代码和环境放在不同的位置。在开始使用 virtualenvwrapper 之前,也许您应该对 virtualenv 本身更加熟悉。

您应该让 Paster 使用项目名称创建一个目录。这是您将在版本控制中提交的目录(例如 git、mercurial...)。您不想提交包含虚拟环境的目录。

It is confusing at first but your code really doesn't need to be in your virtual environment directory at all. Actually it's better not to put your code inside your environment, as you might want to use different environments with the same code, for example to test your code with different versions of Python or different versions of a library.

virtualenvwrapper does put all your environments in a single place. virtualenvwrapper is a convenient tool on top of virtualenv but you don't need it to put your code and your environments in different places. Maybe you should get a bit more comfortable with virtualenv itself before starting to use virtualenvwrapper.

You should let paster create a directory with the project name. This is the directory that you will commit in version control (eg. git, mercurial...). You don't want to commit the directory containing the virtual environment.

未蓝澄海的烟 2024-12-11 08:46:46

这实际上只是自行车脱落,因为您如何创建项目和 virtualenv 是无关紧要的,您可以将它们中的任何一个放置在任何地方,包括彼此内部。

但是,如果您确实愿意,可以 paster create -t​​ Pyramid_starter -o .. 在当前目录中创建项目。

要创建一个新项目:

cd ~/work/my_repo
virtualenv --no-site-packages env
env/bin/pip install pyramid
env/bin/paster create -t pyramid_starter -o .. my_repo
git init
echo 'env' > .gitignore
git add .

我通常会在设置新机器时执行此操作:

cd ~/work
git clone /path/to/<my repo>.git
cd my_repo
virtualenv --no-site-packages env
env/bin/pip install -e . # equivalent to env/bin/python setup.py develop

使用我刚才提到的设置,您需要将 env 目录添加到您的 .gitignore< /代码> 文件。

This is really just bike shedding because how you create the project and the virtualenv are irrelevant and you can place either of them anywhere, including within each other.

However, if you really want to, you can paster create -t pyramid_starter -o .. <current_directory_name> to create the project within the current directory.

To create a new project:

cd ~/work/my_repo
virtualenv --no-site-packages env
env/bin/pip install pyramid
env/bin/paster create -t pyramid_starter -o .. my_repo
git init
echo 'env' > .gitignore
git add .

I'll usually do this when setting up a new machine:

cd ~/work
git clone /path/to/<my repo>.git
cd my_repo
virtualenv --no-site-packages env
env/bin/pip install -e . # equivalent to env/bin/python setup.py develop

Using the setup I just mentioned, you'd want to add the env directory to your .gitignore file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文