小编Gab*_*ley的帖子

Django如何保存自定义formset

我写了以下自定义formset,但对于我的生活,我不知道如何保存表单.我搜索了Django文档并进行了大量搜索,但没有一个解决方案可行.很多兔子洞,但没有肉;-)有人能指出我正确的方向吗?

// views.py partial //

@login_required

def add_stats(request, group_slug, team_id, game_id, template_name = 'games/stats_add_form.html'):

    if request.POST:

        formset = AddStatsFormSet(group_slug=group_slug, team_id=team_id, game_id=game_id, data=request.POST)

        if formset.is_valid():

            formset.save()

            return HttpResponseRedirect(reverse('games_game_list'))

        else:

            formset = TeamStatFormSet(group_slug=group_slug, team_id=team_id, game_id=game_id)

        return render_to_response(template_name, {'formset': formset,})


// modles.py partial //

class PlayerStat(models.Model):

    game = models.ForeignKey(Game, verbose_name=_(u'sport event'),)
    player = models.ForeignKey(Player, verbose_name=_(u'player'),)
    stat = models.ForeignKey(Stat, verbose_name=_(u'statistic'),)
    total = models.CharField(_(u'total'), max_length=25, blank=True, null=True)

    class Meta:
        verbose_name = _('player stat')
        verbose_name_plural = _('player stats')
        db_table     = 'dfusion_playerstats'

        def __unicode__(self):
            return u'%s' % …
Run Code Online (Sandbox Code Playgroud)

forms django dynamic formset

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

我可以在Itunes LP环境中使用跨站点XmlHttpRequest吗?

Itunes基于Webkit平台,由于安全策略,我们无法在JavaScript中使用跨站点XmlHttpRequest.但是,作为例外,我们可以使用特殊标头来实现.这是源代码,我在Safari中成功完成了它:

var url = 'http://mysite.net/canvas.php';   

var mybody = "<?xml version='1.0' charset='utf-8'?><person><name>Arun</name></person>";
var http = new XMLHttpRequest();

http.open("POST", url, true);   
http.setRequestHeader("X-PINGOTHER", "pingpong");
http.setRequestHeader('Content-Type', 'application/xml');

http.setRequestHeader("Content-length", mybody.length);
http.setRequestHeader("Connection", "close");   
http.send(mybody);
Run Code Online (Sandbox Code Playgroud)

我将xml数据发送到我的服务器并在Safari浏览器中成功获得返回响应,但我无法在iTunes LP环境中执行此操作.那有什么问题呢?

javascript itunes

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

有没有一种快速的方法来判断一个应用程序是否在Django的INSTALLED_APPS中?

我正在写一个快速的Django模块,想要检查另一个模块.是否有快捷方式检查INSTALLED_APPSDjango设置中的另一个模块是否在列表中?

python django

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

关于$ .load()的一个奇怪问题

这是我使用$ .load()加载到DOM的文件:

<script type="text/javascript">
    $('.close').click(function() { alert(1) });
</script>
<div class="close">
    click me
</div>
Run Code Online (Sandbox Code Playgroud)

比如,在我看来,<script> 部件会在加载时自动延迟,这是$ .load()的功能吗?

如果是这样,那是如何实施的?

感觉很棒!

javascript jquery load

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

Django没有重定向

我有一个flash文件,可以调用网址:http://test.com/savethis/123456/

我只是希望我的视图在数据库中保存"123456"并且不返回任何内容.

保存值后,我该怎么办?如果我重定向它,它会改变页面,这很糟糕.我可以渲染一个页面,但我不想.我只想让它结束而不是抛出任何错误.

django views httpresponse

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

渐进增强技巧

设计一个适合每个人的网站是一门真正的艺术,而Progressive Enhancement对我来说几乎是一个口头禅......

所以我想知道,无论浏览器,操作系统,javascript,闪存,屏幕分辨率,禁用用户可访问性等,您使用哪些最好的技巧来使网站适合所有人

(我知道很多关于javascript和浏览器的技巧,但会承认对flash等无能为力)

编辑:我不是真的在谈论1%的RIA网站如果没有javascript或flash就无法运行.我不是问如何在没有js的情况下编写Google Docs.我想知道人们为那些可以做很酷的事情但实际上并不需要的网站所做的事情.

我会提供几个我自己的答案......

html javascript progressive-enhancement

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

在迭代过程中,在Python中添加新密钥或附加到字典中的旧密钥的最有效方法是什么?

在不同来源的字典中编译数据时,这是一种常见情况:

假设你有一个存储事物列表的字典,比如我喜欢的东西:

likes = {
    'colors': ['blue','red','purple'],
    'foods': ['apples', 'oranges']
}
Run Code Online (Sandbox Code Playgroud)

和第二个字典,其中包含一些相关的值:

favorites = {
    'colors':'yellow',
    'desserts':'ice cream'
}
Run Code Online (Sandbox Code Playgroud)

然后,您想迭代"favorites"对象,并使用"likes"字典中的相应键将该对象中的项目附加到列表中,或者向其添加一个新键,其值为包含"in"中值的列表.最爱".

做这件事有很多种方法:

for key in favorites:
    if key in likes:
        likes[key].append(favorites[key])
    else:
        likes[key] = list(favorites[key])
Run Code Online (Sandbox Code Playgroud)

要么

for key in favorites:
    try:
        likes[key].append(favorites[key])
    except KeyError:
        likes[key] = list(favorites[key])
Run Code Online (Sandbox Code Playgroud)

还有更多......

我通常使用第一种语法,因为它感觉更加pythonic,但如果还有其他更好的方法,我很想知道它们是什么.谢谢!

python iteration

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

如何在Django中获取ForeignKey字段而不是相关对象?

我有这个:

Class A(models.Model):
     name = models.CharField(max_length=50)

Class B(models.Model):
     a = models.ForeignKey(A)

class C(models.Model):
     a = models.ManyToManyField(A)
Run Code Online (Sandbox Code Playgroud)

当我需要以下a对象中的属性时C:

related_manager = getattr(object_c,'a') 
Run Code Online (Sandbox Code Playgroud)

这给了我一个ManyRelatedManager但问题是当我需要以下a对象中的属性时B:

object_b2 = getattr(object_b,'a')
Run Code Online (Sandbox Code Playgroud)

这给了我一个B类的对象,我需要知道如果是ForeignKey或ManyToManyField,我的意思是,我需要getattr(某事,'some_attribute')并得到模型.*不是自我中的对象.

django django-models

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

如何在单个Django模型中存储任意类型的值?

说我的问题数量未知.例如:

  • 天蓝色[y/n]
  • 你[约会]出生的日期是什么日期
  • 什么是pi [3.14]
  • 什么是大型整合[100]

现在,这些问题中的每一个都提出了一个不同但非常类型的答案(布尔值,日期,浮点数,整数).本土django可以在模型中愉快地处理这些问题.

class SkyModel(models.Model):
    question = models.CharField("Is the sky blue")
    answer = models.BooleanField(default=False)

class BirthModel(models.Model):
    question = models.CharField("What date were your born on")
    answer = models.DateTimeField(default=today)

class PiModel(models.Model)
    question = models.CharField("What is pi")
    answer = models.FloatField()
Run Code Online (Sandbox Code Playgroud)

但这有一个明显的问题,即每个问题都有一个特定的模型 - 所以如果我们以后需要添加一个问题,我必须更改数据库.呸.所以现在我想得到想象 - 如何通过答案类型转换自动地设置模型?

ANSWER_TYPES = (
    ('boolean', 'boolean'),
    ('date', 'date'),
    ('float', 'float'),
    ('int', 'int'),
    ('char', 'char'),
)

class Questions(models.model):
    question = models.CharField(()
    answer = models.CharField()
    answer_type = models.CharField(choices = ANSWER_TYPES)
    default = models.CharField()
Run Code Online (Sandbox Code Playgroud)

所以在理论上这将做到以下几点:

  • 当我构建我的观点时,我会看到答案的类型,并确保我只是放入了这个值.
  • 但是当我想将该答案拉回来时,它将以answer_type指定的格式返回数据.例3.14作为浮点而不是作为str返回.

我该如何进行这种自动转换?或者有人可以提出更好的方法吗? …

python django django-models

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

时间戳转换关闭了一个小时

我正在尝试解析django中的twitter提要,我在转换已发布时间方面遇到了一个奇怪的问题:

我有足够的时间从饲料到正确的9元组:

>> print tweet_time
time.struct_time(tm_year=2009, tm_mon=6, tm_mday=17, tm_hour=14, tm_min=35, tm_sec=28, tm_wday=2, tm_yday=168, tm_isdst=0)
Run Code Online (Sandbox Code Playgroud)

但是当我这样称呼时:

tweet_time = datetime.fromtimestamp(time.mktime(tweet_time))
Run Code Online (Sandbox Code Playgroud)

我结束了1小时的时间:

>> print tweet_time
2009-06-17 15:35:28
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

python django time datetime

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

使用参数'()'和关键字参数'{'category_slug':u'code'}'找不到"code_front"

我收到以下错误消息:

Reverse for 'code_front' with arguments '()' and keyword arguments '{'category_slug': u'code'}' not found.

我是新来的,请帮忙.

django

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

如何在CSS中嵌入Javascript?

我有一个CSS文件,其中包含我的网站的样式信息.一些高度和宽度是基于屏幕大小,所以我可以使用Javascript计算大小,我可以嵌入CSS文件中的javascript吗?

javascript css

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

JQuery Calculation返回NaN

我正在使用JQuery Calculation插件和以下脚本:

function recalc() {
         jQuery("input[class^=percent]").calc(
            "(invoice - cost)/invoice * 100",
            {
                invoice: jQuery("input[class^=invoice]"),
                cost: jQuery("input[class^=cost]")
            },
                function(s) {
                // return the number as a perrcent amount
              return s.toFixed(2) + "%";
            }
        )
    };
Run Code Online (Sandbox Code Playgroud)

只是想知道如何在计算无效时停止显示"NaN%"(例如,除以零)并显示空字符串.

非常感谢任何帮助.干杯!

javascript jquery

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