小编Sov*_*iut的帖子

如何在Django中使用不同的设置进行单元测试?

是否有任何简单的机制来覆盖单元测试的Django设置?我在我的一个模型上有一个管理器,它返回特定数量的最新对象.它返回的对象数由NUM_LATEST设置定义.

如果有人要更改设置,这有可能使我的测试失败.如何覆盖设置setUp()并随后将其恢复tearDown()?如果那是不可能的,有什么方法可以修补方法或模拟设置?

编辑:这是我的经理代码:

class LatestManager(models.Manager):
    """
    Returns a specific number of the most recent public Articles as defined by 
    the NEWS_LATEST_MAX setting.
    """
    def get_query_set(self):
        num_latest = getattr(settings, 'NEWS_NUM_LATEST', 10)
        return super(LatestManager, self).get_query_set().filter(is_public=True)[:num_latest]
Run Code Online (Sandbox Code Playgroud)

管理器用于settings.NEWS_LATEST_MAX切片查询集.如果getattr()设置不存在,则仅用于提供默认值.

testing django settings django-managers

104
推荐指数
9
解决办法
6万
查看次数

Django-Admin:CharField为TextArea

我有

class Cab(models.Model):
    name  = models.CharField( max_length=20 )
    descr = models.CharField( max_length=2000 )

class Cab_Admin(admin.ModelAdmin):
    ordering     = ('name',)
    list_display = ('name','descr', )
    # what to write here to make descr using TextArea?

admin.site.register( Cab, Cab_Admin )
Run Code Online (Sandbox Code Playgroud)

如何在管理界面中将TextArea小部件分配给'descr'字段?

UPD:
管理员唯一接口!

使用ModelForm的好主意.

django django-admin

79
推荐指数
8
解决办法
7万
查看次数

Python/Django:如何断言单元测试结果包含某个字符串?

在python单元测试中(实际上是Django),assert如果我的测试结果中包含我选择的字符串,那么正确的语句是什么?

即,像 result

我想确保我assert至少包含我指定为上面第二个参数的json对象(或字符串),即result

python django json unit-testing assert

59
推荐指数
5
解决办法
6万
查看次数

如何在Python中将环境变量评估为字符串?

我有一个表示路径的字符串.由于此应用程序用于Windows,OSX和Linux,因此我们已定义环境变量以正确映射来自不同文件系统的卷.结果是:

"$C/test/testing"
Run Code Online (Sandbox Code Playgroud)

我想要做的是评估字符串中的环境变量,以便它们被各自的卷名替换.是否有我缺少的特定命令,或者我必须采取os.environ.keys()并手动替换字符串?

python filesystems environment-variables

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

确定pyInstaller生成的Python EXE中的应用程序路径

我有一个驻留在单个.py文件中的应用程序.我已经能够让pyInstaller成功地将它捆绑到一个EXE for Windows中.问题是,应用程序需要一个始终位于同一目录中的应用程序旁边的.cfg文件.

通常,我使用以下代码构建路径:

import os
config_name = 'myapp.cfg'
config_path = os.path.join(sys.path[0], config_name)
Run Code Online (Sandbox Code Playgroud)

但是,当从pyInstaller生成的EXE调用sys.path时,它似乎是空白的.当您运行python交互式命令行并尝试获取sys.path [0]时,会发生同样的行为.

有没有更具体的方法来获取当前运行的应用程序的路径,以便我可以找到相对于它的文件?

python executable relative-path pyinstaller

50
推荐指数
5
解决办法
4万
查看次数

无法通过cron运行服务命令

service service_name start
Run Code Online (Sandbox Code Playgroud)

当我尝试从cmd行运行它时,它的工作原理.但是当我尝试通过cron安排它时,我得到一个错误说

/ bin/sh:service:找不到命令

cron service

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

如何将PIL生成的图像发送到浏览器?

我正在使用烧瓶进行申请.我想将一个图像(由PIL动态生成)发送到客户端而不保存在磁盘上.

知道怎么做吗?

python streaming temporary-files python-imaging-library flask

48
推荐指数
5
解决办法
3万
查看次数

VueJs获取url查询

我正在开发一个带有vuejs的网站,此时我遇到了麻烦,我需要从这个网站上获取网址查询(页面),例如这个网站webitename.com/user/?page=1但是this.$router.query.page得到了一个错误(未捕获的TypeError:无法读取undefined的属性"page"

有人知道这个问题,可以帮助我吗?

PS:我可以使用设置查询页面

this.$router.push({name: 'userIndex', query: { page: '123' } });
Run Code Online (Sandbox Code Playgroud)

我可以得到像这样的url normal params

userID -> (websitename.com/user/:userId | websitename.com/user/1)
Run Code Online (Sandbox Code Playgroud)

但我无法获得任何查询参数

vue.js vue-router vue-component vuejs2

47
推荐指数
4
解决办法
9万
查看次数

有没有办法在Android中启用Safari的JavaScript错误/调试控制台?

我正在开发一个需要在Google Android手机操作系统上运行的JavaScript应用程序.有没有办法在Android模拟器或实际设备上启用Safari中的JavaScript错误/调试控制台?如果是这样,任何有关如何这样做的说明将不胜感激.

javascript safari android

43
推荐指数
5
解决办法
3万
查看次数

在C#中查找字符串中的数字索引

从下面的字符串中我想得到起始编号的索引.请告诉我如何在C#.net中完成.

例如

University of California, 1980-85.  
University of Colorado, 1999-02 
Run Code Online (Sandbox Code Playgroud)

c#

42
推荐指数
3
解决办法
4万
查看次数