我使用通用视图来更新对象.
我使用的形式:
class VehiPrepaClientForm(ModelForm):
class Meta:
model = VehiPrepa
fields = ('date_dem_prepa','carburant','ty_carburant')
def clean(self):
cleaned_data = self.cleaned_data
data = self.cleaned_data['date_dem_prepa']
vehiprepa = get_object_or_404(VehiPrepa,pk=object_id)
if data :
vehiprepa.demande_prepa = 1
vehiprepa.save()
date_in = vehiprepa.date_in
delta = data - date_in
date_dem = date_in + delta
if delta.days < 2 :
raise forms.ValidationError("Veuillez entrez une date au dela du : %s" %(date_dem) )
if data.weekday()>= 5 :
raise forms.ValidationError("La date choisie n'est pas valide, cela tombe un weekend")
#test si date demande sup …Run Code Online (Sandbox Code Playgroud) 首先,我刚刚学习 Ruby,并且有 JavaScript 背景。我有一个问题找不到答案。我有这个例子:
a = 'red'
b = a
b.replace('blue')
b = 'green'
print a
Run Code Online (Sandbox Code Playgroud)
蓝色的
我的问题是:为什么会这样?我知道该设置b = a使它们具有相同的 object_id,因此从技术上讲,同一个变量字符串有两个名称。但我从来没有看到使用这种递归值更改的理由。如果我设置b = a它是因为我想操纵a的值而不改变它。
此外,似乎有时一个方法会修改a,但有时它会导致“b”成为一个新对象。这看起来模棱两可,没有任何意义。
我什么时候会用到这个?重点是什么?这是否意味着我无法将a的值传递到另一个变量而不将任何更改传播回a?
我检索ObjectId列表,我想使用参数$ all检索我的mongo数据库中的所有对象
我正在使用pymongo,我的请求看起来像这样:
db.database.collection.find({ "_id" : { "$all" : [ObjectId('4ee371837c93dd33dc000003'),ObjectId('4eef9f647c93dd1a90000000')] } })
Run Code Online (Sandbox Code Playgroud)
但是请求返回的游标数是0但是当我执行此请求时:
db.database.collection.find_one({ "_id" : ObjectId('4ee371837c93dd33dc000003')})
Run Code Online (Sandbox Code Playgroud)
它回报了我的好对象
任何人都知道它为什么不起作用?
以下在Java中也是如此
"abc"=="abc"
Run Code Online (Sandbox Code Playgroud)
为什么?这两个字符串是两个不同的对象,它们不应该具有相同的对象标识?