dj2: use set and/or clear method for M2M (#36895)

remove RemovedInDjango20Warning:
Direct assignment to the forward side of a many-to-many set is deprecated due
to the implicit save() that happens.
Use items.set() instead.
This commit is contained in:
Lauréline Guérin 2019-10-14 14:05:26 +02:00
parent ccf99d908f
commit a7417488eb
No known key found for this signature in database
GPG Key ID: 1FAB9B9B4F93D473
7 changed files with 18 additions and 18 deletions

View File

@ -346,7 +346,7 @@ class PayMixin(object):
transaction.save()
transaction.regie = regie
transaction.items = items
transaction.items.set(items)
transaction.remote_items = ','.join([x.id for x in remote_items])
transaction.status = 0
transaction.amount = total_amount

View File

@ -148,23 +148,23 @@ class CellVisibilityForm(forms.Form):
if self.cleaned_data['visibility'] == 'all':
self.instance.public = True
self.instance.restricted_to_unlogged = False
self.instance.groups = []
self.instance.groups.clear()
elif self.cleaned_data['visibility'] == 'logged':
self.instance.public = False
self.instance.restricted_to_unlogged = False
self.instance.groups = []
self.instance.groups.clear()
elif self.cleaned_data['visibility'] == 'unlogged':
self.instance.public = True
self.instance.restricted_to_unlogged = True
self.instance.groups = []
self.instance.groups.clear()
elif self.cleaned_data['visibility'] == 'groups-any':
self.instance.public = False
self.instance.restricted_to_unlogged = False
self.instance.groups = self.cleaned_data['groups']
self.instance.groups.set(self.cleaned_data['groups'])
elif self.cleaned_data['visibility'] == 'groups-none':
self.instance.public = False
self.instance.restricted_to_unlogged = True
self.instance.groups = self.cleaned_data['groups']
self.instance.groups.set(self.cleaned_data['groups'])
self.instance.save()
return self.instance

View File

@ -322,14 +322,14 @@ def test_chartng_cell_view(app, normal_user):
group = Group(name='plop')
group.save()
cell.public = False
cell.groups = [group]
cell.groups.set([group])
cell.save()
resp = app.get('/api/dataviz/graph/1/?width=400', status=403)
app = login(app, username='normal-user', password='normal-user')
resp = app.get('/api/dataviz/graph/1/?width=400', status=403)
normal_user.groups = [group]
normal_user.groups.set([group])
normal_user.save()
resp = app.get('/api/dataviz/graph/1/?width=400', status=200)

View File

@ -142,11 +142,11 @@ def test_group_restrictions_import_export(app, some_data):
group.save()
page = Page.objects.get(slug='one')
page.groups = [group]
page.groups.set([group])
page.save()
cell = TextCell.objects.get(order=0)
cell.groups = [group]
cell.groups.set([group])
cell.save()
output = get_output_of_command('export_site')

View File

@ -163,9 +163,9 @@ def test_download_transaction(app, admin_user, payment_backend):
bank_transaction_id='567', status=eopayment.PAID)
trans2 = Transaction.objects.create(regie=regie, remote_items='remote items omg', order_id='2', user=user,
bank_transaction_id='136', status=eopayment.PAID)
trans1.items = [b_item,]
trans1.items.set([b_item])
trans1.save()
trans2.items = [b_item,]
trans2.items.set([b_item])
trans2.save()
app = login(app)
resp = app.get('/manage/lingo/transactions/download-csv/', status=200)

View File

@ -112,14 +112,14 @@ def test_page_visibility():
group.save()
user1 = User(username='foo')
user1.save()
user1.groups = [group]
user1.groups.set([group])
user2 = User(username='bar')
user2.save()
assert page.is_visible(user1)
assert page.is_visible(user2)
page.groups = [group]
page.groups.set([group])
assert not page.is_visible()
assert page.is_visible(user1)
assert not page.is_visible(user2)

View File

@ -100,7 +100,7 @@ def test_page_contents_group_presence(app, normal_user):
cell = TextCell(page=page, placeholder='content', text='Foobar', order=0,
public=False)
cell.save()
cell.groups = [group]
cell.groups.set([group])
resp = app.get('/', status=200)
assert 'Foobar' not in resp.text
@ -108,7 +108,7 @@ def test_page_contents_group_presence(app, normal_user):
resp = app.get('/', status=200)
assert 'Foobar' not in resp.text
normal_user.groups = [group]
normal_user.groups.set([group])
resp = app.get('/', status=200)
assert 'Foobar' in resp.text
@ -121,7 +121,7 @@ def test_page_contents_group_absence(app, normal_user):
cell = TextCell(page=page, placeholder='content', text='Foobar', order=0,
public=False, restricted_to_unlogged=True)
cell.save()
cell.groups = [group]
cell.groups.set([group])
resp = app.get('/', status=200)
assert 'Foobar' not in resp.text
@ -129,7 +129,7 @@ def test_page_contents_group_absence(app, normal_user):
resp = app.get('/', status=200)
assert 'Foobar' in resp.text
normal_user.groups = [group]
normal_user.groups.set([group])
resp = app.get('/', status=200)
assert 'Foobar' not in resp.text