小编ePa*_*oal的帖子

从Git远程存储库中删除.pyc文件

无意中,我已将.pyc文件推送到主存储库.现在我想删除它们,但我不能这样做.有没有办法直接从Bitbucket网站删除它们?

git pyc

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

Django RestFramework组由

我的问题与Django RestFramework有关,关于如何对元素进行分组.

这是我的serializers.py

from collaborativeAPP.models import *
from rest_framework import serializers

class VocabSerializer(serializers.ModelSerializer):
        term_word = serializers.CharField(source='term.word',read_only=True)
        kwdGroup = serializers.StringRelatedField()
        class Meta:
        model = Vocab
                fields = ('id','term_word', 'meaning','kwdGroup')

class TermSerializer(serializers.ModelSerializer):

        word = serializers.CharField(read_only=True)
        class Meta:
                model = Term
                fields = ('url', 'word')
Run Code Online (Sandbox Code Playgroud)

以下json是实际结果:

{"results":[
            {
                "id": 5,
                "term_word": "word1",
                "meaning": "Text1"
                "kwdGroup": "A"
            },
            {
                "id": 6,
                "term_word": "word2",
                "meaning": "Text2"
                "kwdGroup": "A"
            },
            {
                "id": 7,
                "term_word": "word3",
                "meaning": "Text3"
                "kwdGroup": "A"
            }
        ]}
Run Code Online (Sandbox Code Playgroud)

你可以注意到"kwdGroup"是一个重复的元素,我要分组.

我想按kwdGroup分组

{"A":[
       { …
Run Code Online (Sandbox Code Playgroud)

xml django json django-rest-framework

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

带有重音的Python转储json

如何打印带有"à"或"ç"等特殊字符的json?

我可以这样打印:

import json

weird_dict ={"person": "ç", "á": 'à', "ç": 'ã'}
print json.dumps(weird_dict, indent=4, sort_keys=True)

output:

{
    "person": "\u00e7", 
    "\u00e1": "\u00e0", 
    "\u00e7": "\u00e3"
}
Run Code Online (Sandbox Code Playgroud)

如果我使用'ensure_ascii = False'

weird_dict={"person": "ç", "á": 'à', "ç": 'ã'}
print json.dumps(weird_dict, indent=4, sort_keys=True, ensure_ascii=False)
output:
{
    "person": "ç", 
    "á": "à", 
    "ç": "ã"
}
Run Code Online (Sandbox Code Playgroud)

如何使用json克服特殊字符问题?我需要渲染当我使用pystache并尝试打印pystache.render('嗨{{person}}!',weird_dict)它发生在我身上:

"'ascii' codec can't decode byte 0xc3 in position 4770: ordinal not in range(128)"
Run Code Online (Sandbox Code Playgroud)

python json pystache

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

没有外键和原始查询的 Django ORM 连接

一种

class AKeywords(models.Model):
    id = models.AutoField(primary_key=True, db_column="kw_id")
    word = models.CharField(max_length=200)
    ...

    class Meta:
        managed = False
        db_table = '"A"."Keywords"'
Run Code Online (Sandbox Code Playgroud)

class BKeywords(models.Model):
    id = models.AutoField(primary_key=True, db_column="kw_id")
    word = models.CharField(max_length=200)
    ...
    class Meta:
        managed = False
        db_table = '"B"."Keywords"'
Run Code Online (Sandbox Code Playgroud)

我有另一个模型,我想在其中执行我的加入。

class XKeywords(models.Model):
    ...
    k_id = models.IntegerField(blank=True, null=True)
    ...

    class Meta:
        managed = False
        db_table = '"public"."XKeywords"'
Run Code Online (Sandbox Code Playgroud)

我有两个非常相似的模型,一个来自数据库模式,另一个来自另一个数据库模式。将与表 A 或 B 连接的第三个模型是我想要的。

如何在不使用外键和原始查询的情况下加入模型 A 或 B?

django orm join

7
推荐指数
2
解决办法
8252
查看次数

Django Rest Framework dict字段列表

我正在尝试使用Django REST Framework将两个模型字段序列化为一个dicts列表.

这是我的model.py:

class Translation(models.Model):
    translated_term = models.CharField(max_length=200)
    translated_meaning = models.TextField()
    language = models.CharField(max_length=200)
    vocab = models.ForeignKey(Vocab, related_name='translates')

    def __unicode__(self):
            return  '%s: %s' % ( self.language,self.translated_term)
Run Code Online (Sandbox Code Playgroud)

view.py:

class VocabViewSet(viewsets.ModelViewSet):

    queryset = Vocab.objects.all()
    serializer_class = VocabSerializer
Run Code Online (Sandbox Code Playgroud)

serializer.py:

class VocabSerializer(serializers.ModelSerializer):
    ...
        translates= serializers.StringRelatedField(many=True)
    ...

        class Meta:
        model = Vocab
                fields = (...,'translates',...)
Run Code Online (Sandbox Code Playgroud)

Api结果:

{
 .....
    "translates": [
        "EN: Abyssal zone"
    ],
 ....
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何将我的翻译设置为这样的词组列表:

预期的API结果:

  {
 .....
    "translates": [
        {EN: "Abyssal zone"}
    ],
 ....
}
Run Code Online (Sandbox Code Playgroud)

我正在关注文档, …

python django rest dictionary

5
推荐指数
0
解决办法
2673
查看次数

Google Chart:标记堆积柱形图

基于 googleAPI 文档:https : //developers.google.com/chart/interactive/docs/gallery/columnchart?hl= en

正如您在“标记列”部分中看到的,每列都标有一个静态值。我想知道是否可以用所有总和的特定值标记一列。

// Set chart options
     var options = {

         width: 400,
         height: 300,
         calc:????
     };
Run Code Online (Sandbox Code Playgroud)

我应该使用特定功能设置这个“calc”字段吗?

JSFIDDLE:总标签列

我不知道如何使用每个堆叠列的总和值自定义标签。

charts google-visualization

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

如何设置使用 django 发送电子邮件的超时时间?

我正在尝试设置使用 Django 发送电子邮件的超时时间。我正在使用 django 1.7.3 和 python v2.7.6。我的方法是按照此处的 django 文档进行操作。所以我所做的是通过使用以下代码在 django/core/mail/backends 文件夹上创建一个名为 myemailbackend.py 的文件来创建一个自定义电子邮件后端:

from django.core.mail.backends import smtp

class MyEmailBackend(smtp.EmailBackend):
  def __init__(self, *args, **kwargs):
      kwargs.setdefault('timeout', 3) #this is 3 secs, i believe.
      super(MyEmailBackend, self).__init__(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

之后在我的 settings.py 中我设置了我的 EMAIL_BACKEND:

# Email setup

EMAIL_BACKEND = 'django.core.mail.backends.base.myemailbackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'xxxx@gmail.com'
EMAIL_HOST_PASSWORD = 'xxx'
EMAIL_PORT = 587
# EMAIL_TIMEOUT = 3  # 3 sec, this would be great but i notice that this is not …
Run Code Online (Sandbox Code Playgroud)

python email django

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

Django-Rest-Framework路由器寄存器

当我尝试使用Django-REST-FRAMEWORK注册2个以上的路由器时,我遇到了问题.请看一下我的例子:

urls.py

from rest_framework import routers
from collaborativeAPP import views

router = routers.DefaultRouter()
router.register(r'get_vocab', views.VocabViewSet)
router.register(r'get_term', views.TermViewSet)
router.register(r'get_discipline', views.DisciplineViewSet)

urlpatterns = patterns(
...
    url(r'^service/', include(router.urls))
)
Run Code Online (Sandbox Code Playgroud)

views.py

class VocabViewSet(viewsets.ModelViewSet):
    queryset = Vocab.objects.all()
    serializer_class = VocabSerializer

class TermViewSet(viewsets.ModelViewSet):
    queryset = Term.objects.all()
    serializer_class = TermSerializer

class DisciplineViewSet(viewsets.ModelViewSet):
    queryset = Vocab.objects.filter(kwdGroup=4)
    serializer_class = DisciplineSerializer
Run Code Online (Sandbox Code Playgroud)

我的localhost中的结果如下:

HTTP://本地主机:8000 /服务/

HTTP 200 OK
Content-Type: application/json
Vary: Accept
Allow: GET, HEAD, OPTIONS

{
    "get_vocab": "http://127.0.0.1:8000/service/get_discipline/",
    "get_term": "http://127.0.0.1:8000/service/get_term/",
    "get_discipline": "http://127.0.0.1:8000/service/get_discipline/"
}
Run Code Online (Sandbox Code Playgroud)

正如你可以看到我已经注册了3个路由器期待,他们将展示3个网址为每个方法名(get_vocab,get_term,get_discipline).最终结果是 …

django rest django-rest-framework

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

Django Rest Framework自定义字段只有一对值(没有fieldname作为dict键)

嗨,我想只提供一对没有REST服务键的值:

看看我的serializers.py:

 class TranslationSerializer(serializers.ModelSerializer):
        translated_term = serializers.CharField(read_only=True)

        class Meta:
                model = Translation
                fields = ('language','translated_term')

class VocabSerializer(serializers.ModelSerializer):
       ...
        translates = TranslationSerializer(many=True, read_only=True)
       ...

        class Meta:
        model = Vocab
        fields = ( ..., 'translates',...)
Run Code Online (Sandbox Code Playgroud)

结果如下:

"translates": [
        {
            "language": "EN",
            "translated_term": "Chair"
        }
        {
            "language": "IT",
            "translated_term": "asd"
        }
    ],
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,此结果将该字段的名称显示为该字段值旁边的dict键.但我希望有一个不同的结构.如下:

    "translates": [
        {
            "EN": "Chair", "IT":"asd"
        }
    ],
Run Code Online (Sandbox Code Playgroud)

此示例显示了一对键/值,其中key是语言字段值,dict的值是已翻译字段的值.

如何只显示"语言"字段的值与"已翻译"字段而没有字段名称?

python django django-serializer django-rest-framework

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

Objective-C if vs switch

我无法理解为什么这适用于if声明而不是switch:

if ((int)typeOfHall == 1) {//LocalHall
    NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Game"];
    NSPredicate *p = [NSPredicate predicateWithFormat:@"player_id == %@ ",[[NSUserDefaults standardUserDefaults] valueForKey:@"LoggedUserId"]];
    request.predicate = p;
}
Run Code Online (Sandbox Code Playgroud)

下面的代码不起作用(编译错误:( Expected expression在NSFetchRequest上)):

switch ((int)typeOfHall) {
    case 1:
        NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Game"]; //Error Expected expression
        NSPredicate *p = [NSPredicate predicateWithFormat:@"player_id == %@ ",[[NSUserDefaults standardUserDefaults] valueForKey:@"LoggedUserId"]];
        request.predicate = p;
        break;
    default:
        break;             
}
Run Code Online (Sandbox Code Playgroud)

我不知道为什么会这样.我认为switch和if语句是相似的,但在这种情况下它似乎是非常不同的.

你知道为什么会这样吗?

if-statement objective-c switch-statement

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