问题列表 - 第8588页

如何在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万
查看次数

什么是"静态"?

我开始用Java编程.

public static void main(String[]args)
Run Code Online (Sandbox Code Playgroud)

一本书说我应该在这种情况下使用静态,但没有明确说明为什么我应该或它意味着什么.

你能澄清一下吗?

java static

10
推荐指数
2
解决办法
948
查看次数

如何在jquery中序列化文件类型输入

以前使用Prototype我可以序列化输入类型文件,它给了我正在上传的文件的文件名但是当我在jquery中序列化表单时,我只得到了输入类型的文本,而其他的不是文件,我该怎么办呢?

forms jquery serialization

12
推荐指数
1
解决办法
3万
查看次数

有没有人见过类似的编程谜题?

"假设您想要用4×1和6×1乐高积木的行来构建实体面板.对于结构强度,块之间的空间必须永远不会排列在相邻的行中.例如,显示的是18×3面板下面是不可接受的,因为前两行中的块之间的空格对齐.

有2种方法可以构建10×1面板,2种方法可以构建10×2面板,8种方法可以构建18×3面板,7958种方法可以构建36×5面板.

有多少种方法可以构建64×10面板?答案将适合64位有符号整数.编写程序来计算答案.你的程序应该运行得非常快 - 当然,它不应该超过一分钟,即使在较旧的机器上也是如此.让我们知道您的程序计算的价值,程序计算该值的时间,以及您运行它的机器类型.将程序的源代码作为附件包含在内."

我最近得到了一个编程难题,并且一直绞尽脑汁试图解决它.我用c ++编写了一些代码,我知道这个数字是巨大的...我的程序运行了几个小时才决定停止它,因为即使在慢速计算机上也需要1分钟的运行时间.有没有人看过类似的拼图?已经有几个星期了,我再也不能把它拿出去了,但这真的让我感到烦恼,我无法正确解决它.有关使用算法的任何建议吗?或者也许可以通过"开箱即用"来解决它的方法.我使用的是制作一个程序,构建4x1和6x1块的每个可能的"层",以形成64x1层.结果是大约3300个不同的层.然后我让我的程序运行并将它们堆叠到所有可能的10层高墙中,没有裂缝排列......正如你可以看到这个解决方案需要很长很长时间.因此,在时间限制内,蛮力似乎无法有效地解决这个问题.任何建议/见解将不胜感激.

language-agnostic dynamic-programming

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

学习和练习c ++

我正在尝试学习c ++而且我真的想要做很多编码但是我不确定我能编码什么... Tbh,书本练习对我来说不是很有趣(通常因为它们太短了).我喜欢编写OS相关的东西,如I/O的东西..

我正在考虑看linux并尝试模仿那里的一些工具..这是个好主意吗?

c++

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

找到与给定点最近的点

我已经搜遍了这个,但我似乎无法找到最好的方法.我有大约22000纬度/经度点,我想找到最接近iPhone当前位置的点.我见过有人问过Quad Trees,Dijkstra算法和空间数据库.哪种iPhone最好?空间数据库似乎最简单,但我不确定.

编辑:实际上有超过20,000点.您认为迭代所有这些是实现它的方法吗?但感谢您的投入.

谢谢.

iphone gps objective-c

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

通过SSH推送到远程存储库时"访问被拒绝"

我是Git的新手,似乎在通过网络推送到存储库时遇到问题.
以下是我重新创建问题的方法:

  1. 在计算机上创建一个新的Git存储库以进行推送

    mkdir ~/git/test.git
    cd !$
    git --bare init
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在我的本地计算机上,然后我创建一个新的Git存储库并向其添加一个随机文件:

    mkdir test
    git init
    touch TEST
    git add .
    git commit -m "initial commit"
    
    Run Code Online (Sandbox Code Playgroud)
  3. 然后通过以下方式添加远程计 git remote add origin ssh://user@site.com/~/git/test.git

  4. 然后我尝试通过以下方式将本地存储库推送到远程: git push origin master

这就是我这样做时得到的:

fatal: protocol error: bad line length character  <- sometimes not there
Access denied
Access denied
Access denied
Access denied
FATAL ERROR: Server sent disconnect message
type 2 (protocol error):
"Too many authentication failures for user"
Run Code Online (Sandbox Code Playgroud)

我在XP机器上使用cygwin并试图推送到unix服务器.

我也在我家里的两台电脑之间尝试过,我遇到了同样的问题,顺便说两下都是windows机器.

我已通过SSH设置无密码登录,我可以ssh通过以下方式解决:ssh user@site.com

我一直试图解决这两天,任何帮助将不胜感激

git ssh

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

Django形式,继承和表单字段的顺序

我在我的网站上使用Django表单,并希望控制字段的顺序.

这是我定义表单的方式:

class edit_form(forms.Form):
    summary = forms.CharField()
    description = forms.CharField(widget=forms.TextArea)


class create_form(edit_form):
    name = forms.CharField()
Run Code Online (Sandbox Code Playgroud)

该名称是不可变的,只应在创建实体时列出.我使用继承来增加一致性和DRY原则.事实上完全预料到的不是错误的是名称字段在视图/ html的最后列出,但我希望名称字段位于摘要和描述之上.我确实意识到我可以通过将摘要和描述复制到create_form并松散继承来轻松修复它,但我想知道这是否可行.

为什么?想象一下,你在edit_form中有100个字段,并且必须在create_form的顶部添加10个字段 - 复制和维护这两个表单看起来不那么性感.(这不是我的情况,我只是编写一个例子)

那么,我该如何覆盖这种行为呢?

编辑:

显然没有正确的方法来做到这一点,而不经历讨厌的黑客(摆弄.field属性)..field属性是SortedDict(Django的内部数据结构之一),它不提供任何重新排序键:值对的方法.它确实提供了一种在给定索引处插入项目的方法,但这会将项目从类成员移动到构造函数中.这种方法可行,但使代码可读性降低.我认为唯一合适的另一种方法是修改框架本身,这在大多数情况下都不是最优的.

简而言之,代码将变成这样的:

class edit_form(forms.Form):
    summary = forms.CharField()
    description = forms.CharField(widget=forms.TextArea)


class create_form(edit_form):
    def __init__(self,*args,**kwargs):
        forms.Form.__init__(self,*args,**kwargs)

        self.fields.insert(0,'name',forms.CharField())
Run Code Online (Sandbox Code Playgroud)

这让我闭嘴:)

python django django-forms

63
推荐指数
6
解决办法
3万
查看次数

django错误'太多值解包'

我正在通过构建一个简单的食谱应用程序来学习Django.我有一个1表模型,使用配方类别的'choices'字段选项,而不是使用第二'类别'表和外键关系.所以我通过syncdb创建了db表,然后用测试数据加载了表.当我去管理员并点击"食谱"链接以尝试查看食谱时,我收到以下错误:

Template error

In template /var/lib/python-support/python2.6/django/contrib/admin/templates/admin/change_list.html, error at line 34
Caught an exception while rendering: too many values to unpack
Run Code Online (Sandbox Code Playgroud)

如果有人能够阐明这个神秘的错误,那就太棒了.Db是Sqlite.Django版本是1.0.该模型如下:

from django.db import models

class Recipe(models.Model):
    CATEGORY_CHOICES = (
        (1, u'Appetizer'),
        (2, u'Bread'),
        (3, u'Dessert'),
        (4, u'Drinks'),
        (5, u'Main Course'),
        (6, u'Salad'),
        (7, u'Side Dish'),
        (8, u'Soup'),
        (9, u'Sauce/Marinade'),
        (10, u'Other'),        
    )
    name = models.CharField(max_length=255)
    submitter = models.CharField(max_length=40)
    date = models.DateTimeField()
    category = models.SmallIntegerField(choices=CATEGORY_CHOICES)
    ingredients = models.TextField()
    directions = models.TextField()
    comments = models.TextField(null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

python sqlite django

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

c#truthy和falsy值

在JavaScript中,有一个truthy和falsy值的想法.

例如

  • 0:总是假的
  • 1:永远是对的
  • '0':永远是真的
  • '1':永远是真的

.NET框架上的C#语言中是否存在等效的值和错误值列表?

我想知道这个的原因是我发现自己做了以下事情

if(obj != null)
{
   // Do something with the object
}
Run Code Online (Sandbox Code Playgroud)

当我可以写下面的内容

if(obj)
{
   // Do something with the object
}
Run Code Online (Sandbox Code Playgroud)

.net c#

29
推荐指数
5
解决办法
7910
查看次数