小编Che*_*mer的帖子

如何在Django中使用urls.py中的变量重定向url模式?

我想来自的变量重定向url模式urls.py.

我引用 其他stackoverflow解决方案,但我不知道什么时候url有一个变量,如下面的代码.

from django.conf.urls import patterns, url
from django.views.generic import RedirectView


urlpatterns = patterns(
    url(
        r'^permalink/(?P<id>\d+)/foo/$',
        RedirectView.as_view(url='/permalink/(?P<id>\d+)/')
    ),
)
Run Code Online (Sandbox Code Playgroud)

使用此代码,django将重定向/permalink/1/foo//permalink/(?P<id>\d+)/,而不是/permalink/1/.

没有使用的views.py解决方案?

当然我知道使用控制器的解决方案,但我想知道使用url模式是否有任何更简单的解决方案.

python django django-urls url-redirection

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

如何在 django-redis 中扩展缓存 ttl(生存时间)?

我正在使用 django 1.5.4 和 django-redis 3.7.1

当我检索它时,我想扩展缓存的 ttl(time-to-live)

这是示例代码

from django.core.cache import cache

foo = cache.get("foo)

if not foo:
    cache.set("foo", 1, timeout=100)
else:
    // Extend Cache's Time-To-Live something like it
    cache.ttl("foo") = 200
Run Code Online (Sandbox Code Playgroud)

我试图在django-redis-docs搜索这个选项,但我找不到它。

但是,我注意到在 redis 本机命令中可以使用指定现有缓存的生存时间值,例如“ Expire foo 100

我知道cache.set再次使用会产生相同的效果,但我想使用具有生存时间属性的更简单的方法。

django caching ttl redis

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

Django:随机排序(order_by('?'))进行额外的查询

这是django中的示例代码.

[情况1]

views.py

from sampleapp.models import SampleModel
from django.core.cache import cache

def get_filtered_data():

    result = cache.get("result")

    # make cache if result not exists
    if not result:
         result = SampleModel.objects.filter(field_A="foo")
         cache.set("result", result)

    return render_to_response('template.html', locals(), context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

template.html

  {% for case in result %}
  <p>{{ case.field_A}}</p>
  {% endfor %}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,缓存生成后没有生成查询.我用django_debug_toolbar检查了它.


[案例2]

views.py - 添加了一行result = result.order_by('?')

from sampleapp.models import SampleModel
from django.core.cache import cache

def get_filtered_data():

    result = cache.get("result")

    # make cache if result not exists
    if …
Run Code Online (Sandbox Code Playgroud)

django caching

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

IE10是否支持OTF?

我试图在IE 10中使用OTF,但它无法正常工作.我确认TTF在IE 10中运行良好.

我已经尝试通过几种服务(例如fontssquirrel)将OTF转换为EOT但是失败了.也许是因为我的字体不适合英语.

顺便说一句,我发现文章说" (1)IE10为Webfonts解锁CSS OpenType功能 ".它不表示"IE从版本10开始支持OTF吗?".

但是,当我用谷歌搜索时,很多人说"(2)所有版本的IE不支持OTF ".

我无法理解这两句(1)和(2)之间的区别.

internet-explorer opentype internet-explorer-10

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

ini文件 - 从另一个ini文件中引用变量

如何从另一个ini文件中解析变量?

在下面的例子中,我想解析var_aoriginal_configuration.ini,并用它在new_configuration.ini

original_configuration.ini:

[Section A]

var_a = "foo"

var_b = "bar"
Run Code Online (Sandbox Code Playgroud)

new_configuration.ini:

[Section B]

var_c = "lorem"

var_d = {value of var_a in original_configuration.ini}
Run Code Online (Sandbox Code Playgroud)

ini

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

Facebook SDK for Python - 获取用户电子邮件

条件

  • 我的Facebook应用程序有权获取用户 email
  • 我已经检查过email用Javascript 获取用户工作正常
  • 服务器没有过期access token的用户

目标


问题

  • 成功获得nameid用户,但email不包括
  • 我想email聚在一起

import facebook

graph = facebook.GraphAPI(access_token='CAA...DZD')

graph.get_object(id='me')
# result : {u'name': u'Username', u'id': u'123456789'}

graph.get_object(id='me?fields=email,id,name')
# Error : facebook.GraphAPIError: An active access token must be used to query information about the current user
Run Code Online (Sandbox Code Playgroud)

python facebook facebook-graph-api

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

芹菜:CELERYD_CONCURRENCY和工人数量

另一个stackoverflow回答,我试图限制芹菜的工人数量

在我终止所有芹菜工人后,我用新的配置重新启动了芹菜.

CELERYD_CONCURRENCY = 1(在Django的settings.py中)

然后我输入以下命令来检查有多少芹菜工人正在工作.

ps auxww | grep 'celery worker' | grep -v grep | awk '{print $2}'

它返回两个PID,如24803,24817.

然后我改变配置CELERYD_CONCURRENCY = 2并重新启动芹菜.

相同的命令返回三个PID,如24944,24958,24959.(如您所见,最后两个PID是顺序的)

这意味着按照我的预期增加了工人数量.

但是,我不知道为什么它会返回两个PID,即使只有一个芹菜工人正在工作?

是否有一些辅助过程来帮助工人?

worker celery django-celery

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

Django信号post_save更新

我有一个与Catalog模型具有OnetoOne关系的Article模型.

我当前的功能有Article模型,在post_save上创建一个具有相同名称的Catalog模型.我想做另一个功能,其中Article FK从null变为更新到现在可用的同名Catalog实例.

这是我到目前为止:

class Catalog(models.Model):
    name = models.CharField(max_length=100)
    price = models.IntegerField()

    def __unicode__(self):
        return self.name

class Article(models.Model):
    catalog = models.OneToOneField(Catalog, related_name='article_products', blank=True, null=True)
    title = models.CharField(max_length=200)

    def __unicode__(self):
        return unicode(self.title)

@receiver(post_save, sender=Article)
def create_catalog(sender, **kwargs):
    if kwargs.get('created', False):
        Catalog.objects.get_or_create(name=kwargs.get('instance'), price='10')
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常.创建Article模型实例后,它将创建同名的Catalog实例.我现在想要将新创建的文章与FK关系更新为新创建的Catalog实例.我认为我的逻辑很接近,但我无法让它发挥作用.

@receiver(post_save, sender=Catalog)
def attach_catalog(sender, **kwargs):
    if kwargs.get('created', False):
        Article.objects.latest('id').update(catalog=kwargs.get('instance'))
Run Code Online (Sandbox Code Playgroud)

django django-signals django-models

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

Django-解析JSONP(带有填充的Json)

我正在使用JSONP将数据从发送otherdomain.commydomain.com

但是,当我尝试在django控制器views.py)中解析JSONP数据时,我遇到了错误。

这是我的代码。


mydomain.com客户端页面中的Javascript

jsonData = {
    'foo': 'bar',
}

$.ajax({
    url: 'http://otherdomain.com/end_point/',
    type: 'GET',
    contentType: 'application/json; charset=utf-8',
    data: jsonData,
    dataType : 'jsonp',
    jsonp : 'callback'
});
Run Code Online (Sandbox Code Playgroud)

中的Django控制器(views.pymydomain.com

from django.http import JsonResponse
import json

def decode_jsonp(request):

    if 'callback' in request.GET:
        json_object = json.loads(request.body) # Raise error
        json_object = json.dumps(request.body) # Do not raise error but returns nothing
        json_object = json.loads(json.dumps(request.body)) # Raise error

        foo = …
Run Code Online (Sandbox Code Playgroud)

python django jsonp

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

如何将Facebook onlogin事件绑定到自定义按钮?

我知道如何使用自定义按钮作为Facebook登录.

现在我想onlogin事件绑定到自定义按钮,但我不知道该怎么做.

原始代码

<fb:login-button scope="public_profile,email" onlogin="afterLogin();">
</fb:login-button>

<script>
    /* Assume that Facebook SDK loaded asyncronously and initilized */

    function afterLogin() {
        // Do stuff
    }
</script>
Run Code Online (Sandbox Code Playgroud)

我的代码

<button id="cusomized-button" onclick="fbLogin();" onlogin="afterLogin();">
    Customized button
</button>

<script>
    /* Assume that Facebook SDK loaded asynchronously and initialized */

    // Show facebook login modal
    function fbLogin() {
        FB.login(function() {}, {
            scope: 'email,public_profile'
        });
    };

    function afterLogin() {
        // Do stuff
    }
</script>
Run Code Online (Sandbox Code Playgroud)

facebook facebook-oauth

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