小编See*_*her的帖子

Django 1.7从内联表单中删除"添加"按钮

我在实现(可能)相当简单的任务时遇到了问题.我有完全可修改的模型(Prodotto,Comune),它们显示为"可添加"字段,如下图所示.我不想看到的是这些字段的+(添加)按钮,因此删除了这种形式的"可添加"的适当性.我已经尝试在两个模型中设置has_add_permission = False,但是这会使得完全向这些模型添加新对象变得不可能,不仅仅是以这种形式.

我怎样才能做到这一点?

编辑:为了澄清我的需要,我不希望在FK模型的字段旁边有"+",但我仍然希望能够添加全新的内联.尽可能清楚,正如我在评论中所写,考虑这样的场景:https://code.djangoproject.com/attachment/ticket/20367/django_custom_user_admin_form.png我只需要"+"s "组和国家/地区"旁边已删除

现有代码:

models.py(涉及的具体应用):

from django.db import models

from smart_selects.db_fields import ChainedForeignKey

from apps.comune.models import Comune, Cap


class Prodotto(models.Model):
    SETTORE_CHOICES = (
        ('CAL', 'Accessori calzature'),
        ('ALI', 'Alimentari'),
        ('ARA', 'Arredamenti e accessori'),
        ('AEM', 'Auto e moto'),
        ('CAL', 'Calzature'),
        ('CEG', 'Cartaria e grafica'),
        ('CEP', 'Concerie e pelletterie'),
        ('EDI', 'Edilizia'),
        ('INV', 'Industrie varie'),
        ('IST', 'Istruzione'),
        ('MDC', 'Materiali da costruzione'),
        ('MMC', 'Metalmeccanica'),
        ('SEI', 'Serramenti e infissi'),
        ('STM', 'Strumenti musicali'),
        ('TEI', …
Run Code Online (Sandbox Code Playgroud)

python django django-admin

12
推荐指数
4
解决办法
5606
查看次数

Django 1.7 google oauth2令牌验证失败

我正在尝试通过验证Google令牌来访问Django应用程序中的用户日历.虽然我已经跟踪了网上发现的几个迹象,但我仍然遇到了对我的回调函数(错误请求)的400错误代码响应.

views.py

# -*- coding: utf-8 -*-
import os

import argparse
import httplib2
import logging

from apiclient.discovery import build
from oauth2client import tools
from oauth2client.django_orm import Storage
from oauth2client import xsrfutil
from oauth2client.client import flow_from_clientsecrets

from django.http import HttpResponse
from django.http import HttpResponseBadRequest
from django.http import HttpResponseRedirect
from django.shortcuts import render_to_response
from django.core.urlresolvers import reverse
from django.contrib import auth
from django.contrib.auth.decorators import login_required
from django.conf import settings

from apps.tecnico.models import Credentials, Flow

CLIENT_SECRETS = os.path.join(
    os.path.dirname(__file__), '../../client_secrets.json')

@login_required
def index(request): …
Run Code Online (Sandbox Code Playgroud)

python django google-api oauth-2.0 oauth2client

8
推荐指数
2
解决办法
1314
查看次数

第三方应用程序的Django翻译

我正在尝试在Django 1.7项目中翻译Django第三方应用程序(django-recurrence)。尽管我已经在这里阅读了有关同一问题的所有答案,但我仍然无法让Django为该应用程序生成django.po。

这些是我当前的设置:

settings.py

LANGUAGE_CODE = 'it-IT'
gettext = lambda s: s
LANGUAGES = (
    ('en-us', gettext('English')),
    ('it-it', gettext('Italian')),
)

LOCALE_PATHS = (
    '/home/seether/.virtualenvs/mytime/lib/python2.7/site-packages/recurrence/locale',)

TIME_ZONE = 'Europe/Rome'

USE_I18N = True

USE_L10N = True
Run Code Online (Sandbox Code Playgroud)

我尝试以几种方式修改LOCALE_PATHS,例如:

LOCALE_PATHS = (os.path.join(BASE_DIR,'locale-recurrence'))
LOCALE_PATHS = (os.path.join(BASE_DIR,'locale'))
...
Run Code Online (Sandbox Code Playgroud)

等等。我已经从该应用程序手动翻译了django.po,尝试将其复制到此类目录中,使其与我不时尝试的设置相对应,但从未成功。我尝试将LANGUAGES和LANGUAGE_CODE更改为几乎所有可能的组合:“ it”,“ it-it”,“ it_it”,“ it-IT”和“ it_IT”。也没用。

命令:

django-admin.py makemessages --all
Run Code Online (Sandbox Code Playgroud)

只会为Django本身生成语言环境文件,而完全忽略了我要翻译的应用程序。我也尝试过使用django-rosetta,但是老实说,我自己已经翻译了该应用程序,所以我不能说要加深这条路。基本上,我认为找到正确的方法来简单地告诉Django编译我为django-recurrence编写的django.po并使用它就足够了。

我在这里想念什么?

python django django-1.7

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

Django 管理员通过 get_list_filter 对远程字段进行过滤

我有 3 个模型,通过 FK 连接成这样的链:

class Customer(models.Model):
    name = models.CharField(max_length=100)


class Order(models.Model):
    name = models.CharField(max_length=100)
    customer = models.ForeignKey(
        'customer.Customer', on_delete=models.PROTECT)


class Task(models.Model):
    name = models.CharField(max_length=100)
    order = models.ForeignKey(
        'order.Order', on_delete=models.PROTECT)
Run Code Online (Sandbox Code Playgroud)

现在,如果在我的 TaskAdmin 中,我使用:

list_filter = ('order__customer', )

一切正常。但如果我选择:

def get_list_filter(self, request):
    return ('order__customer', )
Run Code Online (Sandbox Code Playgroud)

页面加载,但一旦我单击任何可能的客户,就会出现错误请求(400)错误页面。对我来说,这听起来像是 Django 错误,但也许我在这里做错了什么......有什么提示吗?

django django-models django-admin

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

在解析多行文件中的行时从awk设置变量

我有一个包含多行的txt文件,每行都描述一个远程服务器,如下所示:

user@server:port:remote_working_path:whether_using_VPN
Run Code Online (Sandbox Code Playgroud)

:char分隔了4个字段.

我需要在每个服务器中操作批处理操作,因此我需要解析每一行并设置适当的变量.现在,我编码的是:

while read server;
do
        echo "$server" | awk -F ':' '{print $1}' &&
        echo "$server" | awk -F ':' '{print $2}' &&
        echo "$server" | awk -F ':' '{print $3}'
        echo "$VPN"
        declare $( echo "$server" | awk -F ':' '{print $VPN=$4}' )
        echo 'VPN: '$VPN
done < $CUSTOMER_SERVERS_FILE
Run Code Online (Sandbox Code Playgroud)

此脚本仅打印前3个字段,并且我的意图还应将$ VPN变量设置为第4个字段.然而,这似乎有点破碎,我无法解决它.我应该如何修改它以便$ VPN = $ 4?

bash shell awk

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