小编Pyd*_* UA的帖子

在Python中舍入到5(或其他数字)

是否有内置函数可以像下面这样循环?

10 -> 10
12 -> 10
13 -> 15
14 -> 15
16 -> 15
18 -> 20
Run Code Online (Sandbox Code Playgroud)

python rounding

147
推荐指数
9
解决办法
10万
查看次数

django静态文件版本控制

我正在研究静态文件和更新问题的一些通用解决方案

示例:假设有一个带有/static/styles.css文件的站点 - 并且站点已经使用了很长时间 - 所以很多访问者在浏览器中缓存了这个文件

现在我们在这个css文件中做了更改,并在服务器上更新,但是一些用户仍然有旧版本(尽管服务器返回了修改日期)

显而易见的解决方案 - 在文件/static/styles.css?v=1.1中添加一些版本

但在这种情况下,开发人员必须跟踪此文件中的更改并手动增加版本

解决方案2 - 计算文件的md5哈希并添加到url /static/styels.css/?v={mdp5hashvalue}

看起来好多了,但md5应该自动计算一些..

他们可能的方式我看到了 - 像这样创建一些模板标签

{% static_file  "style.css" %}
Run Code Online (Sandbox Code Playgroud)

这将呈现

<link src="/static/style.css?v=md5hash">
Run Code Online (Sandbox Code Playgroud)

但是,我不希望这个标签在每个页面加载时计算md5,我不想在django-cache中存储hash,因为那样我们将在更新文件后清除..

有什么想法吗 ?

python django django-staticfiles

31
推荐指数
5
解决办法
2万
查看次数

Apache solr搜索部分单词

我正在使用apache solr搜索引擎来索引我的网站数据库..

我正在使用django + http://haystacksearch.org/

所以,假设我的文件中有"鸡"字样

当我搜索"鸡"时 - solr可以找到这个文件

但是,当我搜索"小鸡"时 - 它没有找到任何东西..

有没有办法来解决这个问题 ?

django solr django-search-lucene django-haystack

22
推荐指数
2
解决办法
8249
查看次数

phonegap - 在浏览器中打开链接

我用phonegap(cordova 2.2)

我有这样的链接:

<a href="http://twitter.com/foobar" target="_blank">twitter</a>
Run Code Online (Sandbox Code Playgroud)

在iOS上 - 它在浏览器中打开链接(Safari)

但是在Android上 - 它在webview中打开(在我的phonegap应用程序中)

有没有办法使Android的工作方式与iOS相同?

cordova cordova-2.0.0

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

将html转换为图像的程序

是否有一个现成的程序,我可以从我的Web应用程序运行,将HTML文件转换为图像?最好使用Webkit还是其他成熟的浏览器引擎?

我尝试了wkhtmltoimage,但它没有正确渲染背景(而wkhtmltopd工作正常).有一个有效吗?

linux html-rendering

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

<input type ="file"> - 自定义样式/ css

有没有办法<input type="file">在使用CSS的所有浏览器中看起来相同?

html css file-io

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

镜像git到svn

我有一个开源项目的主要git存储库

我想将所有提交镜像到svn存储库(在code.google.com上),是否可能?

svn git git-svn

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

nginx的全局auth_request

我有一个服务器,我用nginx运行多个子域网站

每个子域都有一个server { ... }配置块(in sites-enabled)

我想添加一个全局动态身份验证后端(另一个http站点),它将检查请求的子域并提供访问权限或询问用户凭据

所以流程应该是这样的

request stie1.example.com ---> [auth check in database] 
                                /              \
                              no               yes
                              /                  \
            show username/pass form        pass to site1.example.com
Run Code Online (Sandbox Code Playgroud)

我找到了auth_request模块 - 但仅举例说明了server上下文

我希望它在顶级环境(http上下文) - 当然 location指令不可用

基本上我想要的是一些全局nginx中间件,我可以运行一些代码(即python)来检查用户是否有权查看其中一个托管域

有什么建议 ?

nginx

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

Paypal - 没有帐户的付款

我需要将paypal集成到在线商店..

要求 - 所有信用卡(安全)详细信息应在PayPal网站上输入 - 用户不需要PayPal帐户

因此,有几种集成方式

  1. Standart IPN - 当您将用户重定向到paypal网站时,他使用他的(或创建新的)paypal帐户,然后重定向回网站
  2. PayPal Payments Pro - 用户输入他的详细信息,包括我网站上的信用卡号码(我使用API​​付款)

但有没有办法我可以将用户重定向到paypal网站,他只是输入一个信用卡号码并重定向回来..所以用户输入只是信用卡号码,它是 - 他不需要PayPal帐户或填写任何其他字段..有可能吗?

paypal

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

具有默认元数据的自定义注释类

我正在尝试开发一个自定义注释类......

带注释的允许添加一些元数据到可以在运行时检查的类型提示:

from typing import Annotated

some: Annotated[int, 'must be even']
Run Code Online (Sandbox Code Playgroud)

所以元数据总是需要的 - 但我想开发一种类似的类型,用一些默认值初始化元数据

some: MyAnnotated[int] # <- this must now must be equal to Annotated[int, '<default-meta>']

Run Code Online (Sandbox Code Playgroud)

我可以使用以下代码使其工作:

from typing import Generic, TypeVar, Annotated, Any

T = TypeVar('T')


class MyAnnotated(Generic[T]):
    @classmethod
    def __class_getitem__(cls, param: Any) -> T:
        if isinstance(param, tuple):
            return Annotated[param[0], param[1]]  # type: ignore
        return Annotated[param, '<default-meta>']  # type: ignore


assert MyAnnotated[int, 'my-meta'] == Annotated[int, 'my-meta']
assert MyAnnotated[int] == Annotated[int, '<default-meta>']
Run Code Online (Sandbox Code Playgroud)

这按预期工作 - 但编辑器(VScode)不理解它并且无法添加自动补全:

在此输入图像描述

while 与默认的带注释的类一起工作正常:

在此输入图像描述

python annotations mypy

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