Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

import logging 

 

from django.db.models.signals import post_save 

 

from backend_app.models.course import Course 

from backend_app.models.exchange import Exchange 

from backend_app.models.exchangeFeedback import ExchangeFeedback 

from base_app.models import User 

 

logger = logging.getLogger("django") 

 

 

def update_exchange_on_course_save(sender, instance: Course, created, **kwargs): 

try: 

exchange = instance.exchange 

if exchange is not None: 

student_login = instance.student_login 

if student_login is None: 

exchange.student = None 

else: 

exchange.student = User.objects.get(username=student_login) 

exchange.save() 

except User.DoesNotExist: 

pass 

 

 

def update_exchange_feedback_on_exchange_save( 

sender, instance: Exchange, created, **kwargs 

): 

try: 

feedbacks: ExchangeFeedback = instance.feedbacks 

feedbacks.university = instance.university 

feedbacks.save() 

except ExchangeFeedback.DoesNotExist: 

pass 

 

 

def enable_external_data_coherence(): 

post_save.connect(update_exchange_on_course_save, sender=Course) 

post_save.connect(update_exchange_feedback_on_exchange_save, sender=Exchange)