小编Luc*_*ild的帖子

查询firestore数据库以获取文档ID

我想查询firestore数据库中的文档ID.目前我有以下代码:

db.collection('books').where('id', '==', 'fK3ddutEpD2qQqRMXNW5').get()
Run Code Online (Sandbox Code Playgroud)

我没有得到结果.但是当我查询不同的字段时,它可以工作:

db.collection('books').where('genre', '==', 'biography').get()
Run Code Online (Sandbox Code Playgroud)

如何调用文档ID的名称?

javascript firebase google-cloud-firestore

17
推荐指数
7
解决办法
2万
查看次数

在Debian 8上安装Python 3.6时出现分段错误

我试图在Debain 8上安装Python 3.6。运行make命令时,发生错误。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.11 (jessie)
Release:    8.11
Codename:   jessie
Run Code Online (Sandbox Code Playgroud)

我运行的命令:

wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
tar xvf Python-3.6.3.tgz
cd Python-3.6.3
./configure --enable-optimizations
make -j8  # Error occurs here
sudo make altinstall
python3.6
Run Code Online (Sandbox Code Playgroud)

那是错误

...
Python build finished successfully!
The necessary bits to build these optional modules were not found:
_dbm                  _gdbm                 _lzma              
To find the necessary bits, look in setup.py in detect_modules() for the module's name.

The …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

使用 Docker 在 VPS 上部署应用程序的最佳实践是什么?

我确实有一个(Python Flask)应用程序,我想使用 GitLab CI 和 Docker 将其部署到我的 VPS。

在我的服务器上,我希望拥有应用程序的生产版本和暂存版本。它们都需要 MongoDB 连接。

我的计划是在 GitLab 上自动构建应用程序并将其推送到 GitLab 的 Docker 注册表。如果我想将应用程序部署到暂存或生产环境,我会执行docker pull,docker rm和docker run。

计划是将配置(例如secret_key)存储在.production.env(和.staging.env)中并将其传递给应用程序使用docker run --env-file ./env.list

我的服务器上已经安装了 MongoDB,并且应用程序的两个环境应使用相同的 MongoDB 实例,但数据库名称不同(在 中配置.env)。

这是部署我的应用程序的最佳实践吗?你有什么建议?谢谢!

docker gitlab-ci devops

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

带有“子模块”的 Flask 应用程序

我正在尝试开发具有不同“子模块”的 API。例如,有一个叫做 todo,另一个叫做 newsletter。

我想要做的是,我希望能够在开发过程中自己运行模块,并且我希望能够在服务器上运行带有它的子模块的整个 API。

我当前的文件夹结构看起来像这样

api
  - api
    - todo
      - todo
        - __init__.py
        - routes.py
        - utils.py
        - ...
      - README.md
      - requirements.txt
    - newsletter
      - ...
  - run.py
Run Code Online (Sandbox Code Playgroud)

目的是能够在开发过程中运行它:

cd api/todo/todo
python3 run.py
Run Code Online (Sandbox Code Playgroud)

这在服务器上

python3 run.py
Run Code Online (Sandbox Code Playgroud)

路线应该是相对的:

在生产过程中,一个子模块的路径应该是这样的

/add
Run Code Online (Sandbox Code Playgroud)

但是在服务器上,它们应该始终包含子模块的名称

/todo/add
Run Code Online (Sandbox Code Playgroud)

此外,我希望能够将每个子模块的代码放在一个 GitHub 存储库中,以便其他人能够自己运行它们。

我目前坚持导入模块。我可以解决路径问题吗使用 Flasks 蓝图吗?

我非常感谢任何帮助!

python packages flask

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

将 Pako deflate 与 Python 结合使用

我正在尝试压缩字典以访问 API。
我阅读了某人用 JavaScript 和一个名为“pako”的库压缩数据的代码,并自己尝试了。它工作完美:

var myDictionary = {...}

var b = pako.deflate(JSON.stringify(a), { 
    to: "string", 
    gzip: !0 
  }); 
  return b = btoa(b) 
}

var compressed = b(n)
Run Code Online (Sandbox Code Playgroud)

现在我想用Python做同样的事情:我尝试了以下方法,但结果不同并且不起作用:

my_dictionary = {...}
data_json = json.dumps(my_dictionary, ensure_ascii=False)
data_gzip = zlib.compress(bytes(data_json, "utf-8"))
compressed = base64.b64encode(bytes(str(data_gzip), "utf-8"))
Run Code Online (Sandbox Code Playgroud)

有谁知道如何用Python解决这个问题吗?Python 是否有类似 pako 的库?

javascript python compression pako

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

更改赫斯提亚的章节顺序

在 WordPress 主题“Hestia”的免费版本中,您无法更改首页上各部分的顺序。有一些自定义的 PHP 片段允许您更改顺序,但它们非常复杂。

css php wordpress wordpress-theming css-grid

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