我在实现(可能)相当简单的任务时遇到了问题.我有完全可修改的模型(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) 我正在尝试通过验证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) 我正在尝试在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并使用它就足够了。
我在这里想念什么?
我有 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 错误,但也许我在这里做错了什么......有什么提示吗?
我有一个包含多行的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?
django ×4
python ×3
django-admin ×2
awk ×1
bash ×1
django-1.7 ×1
google-api ×1
oauth-2.0 ×1
oauth2client ×1
shell ×1