小编jaz*_*lue的帖子

Django ModelForm中的self.instance

Django ModelForm构造函数中的self.instance意味着什么,我在哪里可以找到它的文档?

class MyModelForm(ModelForm):
    def __init__(self, *args, **kwargs):
        super(MyModelForm, self).__init__(*args, **kwargs)
        if self.instance:
        ...
Run Code Online (Sandbox Code Playgroud)

python django

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

Django ModelForm标签定制

Django文档解释了如何在ModelForm模型映射中使用标签自定义:https://docs.djangoproject.com/en/dev/topics/forms/modelforms/ .但是,当我尝试按照它时,我得到错误:

name '_' is not defined.
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

另外,为什么_括号前应该有符号?

这是我的代码:

class RuleForm(ModelForm):
    def __init__(self, *args, **kwargs): 
        super(ModelForm, self).__init__(*args, **kwargs)
        self.css_class = "rule"

    class Meta:
        model = Rule
        fields = ("user", "title")
        exclude = ("user")
        widgets = {
            "title" : TextInput(attrs={"class" : "title"}),
        }
        labels = {
            "title": _("Rule Title"),
        }
Run Code Online (Sandbox Code Playgroud)

python django label django-forms

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

AngularJS:是0 == 2?

我在这里挠头.我正在使用angularJS并尝试使用包含对parseInt的调用的表达式.

{{0 == 2}}  
Run Code Online (Sandbox Code Playgroud)

... 按预期打印错误.)

但是,当我尝试时:

{{parseInt(0) == parseInt(2)}} 
Run Code Online (Sandbox Code Playgroud)

......打印出来...... 真实!

这怎么可能?

angularjs

12
推荐指数
2
解决办法
427
查看次数

将Python词典列表附加到文件而不加载它

假设我需要一个包含字典列表的数据库文件:

文件:

[
  {"name":"Joe","data":[1,2,3,4,5]},
  {   ...                         },
           ...
]
Run Code Online (Sandbox Code Playgroud)

我需要一个函数来接收如上所示的字典列表并将其附加到文件中.有没有办法实现这一点,比如使用json(或任何其他方法),而不加载文件?

EDIT1:注意:我需要的是将新词典附加到光盘上已有的文件中.

python json pickle

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

芹菜:如何限制队列中的任务数量并在满员时停止喂食?

我对Celery很新,这是我的问题:

假设我有一个脚本经常被认为是从DB获取新数据并使用Celery将其发送给工作人员.

tasks.py

# Celery Task
from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')

@app.task
def process_data(x):
    # Do something with x
    pass
Run Code Online (Sandbox Code Playgroud)

fetch_db.py

# Fetch new data from DB and dispatch to workers.
from tasks import process_data

while True:
    # Run DB query here to fetch new data from DB fetched_data

    process_data.delay(fetched_data)

    sleep(30);
Run Code Online (Sandbox Code Playgroud)

这是我的担忧:数据每30秒获取一次.process_data()函数可能需要更长的时间,并且取决于工作者的数量(特别是如果太少),队列可能会受到我所理解的限制.

  1. 我无法增加工人数量.
  2. 我可以修改代码,以便在数组满时禁止进入队列.

问题是如何设置队列大小以及如何知道它已满?一般来说,如何应对这种情况?

python multithreading multiprocessing rabbitmq celery

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

Django模型latest()方法

我有以下问题(BTW我想我前一天没遇到过这个问题):

>>> rule = Rule.objects.get(user=user)
>>> rule.id
1
>>> rule = Rule.objects.get(user=user).latest('id')

AttributeError: 'Rule' object has no attribute 'latest'
Run Code Online (Sandbox Code Playgroud)

为什么我收到错误?

python django django-models django-queryset

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

在Python中取消引用列表内的列表

当我以"通用"方式定义列表时:

>>>a=[[]]*3
>>>a
[[],[],[]]
Run Code Online (Sandbox Code Playgroud)

然后尝试仅附加到外部列表的第二个元素:

>>>a[1].append([0,1])
>>>a
[[[0,1]], [[0,1]], [[0,1]]]
Run Code Online (Sandbox Code Playgroud)

它可以附加到外部列表的所有元素,如上所示,可能是因为元素是对同一列表的引用而不是不同的列表(为什么它以这种方式工作?).我怎样才能以相同的"通用"方式实际创建列表,这样内部列表将是不同的列表而不仅仅是引用.谢谢.

python reference list

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

Django静态文件未更新

在我的Django项目中,应用程序my_app有一个引用javascript静态文件的模板:

<script src="{% static 'my_app/my_script.js' %}"></script>
Run Code Online (Sandbox Code Playgroud)

一旦我在my_app/templates/my_app中安装my_script.js,一切似乎都有效.在某些时候,我用不同的脚本覆盖my_script.js,这样my_script.js现在有不同的内容.

但是,当我使用浏览器加载my_app时,它会加载旧的my_script.js,尽管它不再存在.我该如何解决?谢谢.

javascript django django-caching django-staticfiles

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

Django模型与多个模型的关系

假设有一个抽象模型CarOwner:而Person或Business可以是CarOwner.此外,具有特定VIN的汽车可以属于(涉及)个人或企业,但不属于两者(互斥的情况).在下面的代码的最后,我提出了两种可能性(参见代码中的注释"#1.我应该拥有这个???"和"#2.......或者我应该拥有这个???").在第一种可能性中,与抽象模型建立了多对一关系,我不确定这是否是正确的方法.在第二种情况下,建立了两种关系,我不确定这是否正确,特别是不清楚如何使它们相互排斥.那么哪一个是正确的,如果不是,请尽可能提供正确答案.谢谢.

class CarOwner(models.Model):
    location = models.CharField(max_length=50, blank=True)

    class Meta:
        abstract = True

class Person(CarOwner):
    name = models.CharField(max_length=50, blank=True)

class Business(CarOwner):
    business_id = models.CharField(max_length=50, blank=True)

class Car(models.Model):
    vin = models.CharField(max_length=50, blank=True)

    # 1. SHOULD I HAVE THIS??? (CarOwner is abstract)
    carowner = models.ForeignKey(CarOwner, blank=True, null=True)

    # 2. ...OR SHOULD I HAVE THIS???
    person = models.ForeignKey(Person, blank=True, null=True)
    business = models.ForeignKey(Business, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

django django-models foreign-key-relationship django-orm many-to-one

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

Flask-SQLAlchemy检查数据库服务器是否响应

我正在使用flask-SQLAlchemy作为我的webservice.我想有一个端点,检查使用的MySQL数据库可用性/响应性的状态.我该怎么办呢?谢谢.

以下是我的代码的相关部分:

mywebsvc.py

...
app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://mylogin:mypw@localhost/mydb'

db.init_app(app)
...
Run Code Online (Sandbox Code Playgroud)

models_shared.py

from flask.ext.sqlalchemy import SQLAlchemy

db = SQLAlchemy()
Run Code Online (Sandbox Code Playgroud)

models.py

from models_shared import db

class Car(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    make = db.Column(db.String(64), index=True, unique=True)
    color = db.Column(db.String(64), index=False, unique=False)
Run Code Online (Sandbox Code Playgroud)

routes.py

...
@app.route('/is_available', methods=['GET'])
def is_available():
    #???
Run Code Online (Sandbox Code Playgroud)

python mysql flask-sqlalchemy

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