31
32 def validate(self, data):
33 email = data["email"]
34 GroupDetails = GroupDetails.objects.filter(group=data["group"]) 35
36 if GroupDetails.filter(email=email).exists():
37 raise ValidationError({"msg": "email already exists in this group"})
76 permission_classes = [IsAuthenticated]
77
78 def get_object(self):
79 email = self.request.data.get("email") 80 app_pass = GmailAPPModel.objects.get(email=email)
81 return app_pass
82
43 serializer_class = ChangePasswordSerializer
44
45 def get_object(self):
46 email = self.request.data.get("email") 47 user = NewUserResgistration.objects.get(email=email)
48 return user
49
229
230 @staticmethod
231 def validated(data):
232 email = data["email"]233
234 try:
235 appGmail = GmailAPPModel.objects.get(email=email)
214 fields = "__all__"
215
216 def validate(self, data):
217 email = data["email"]218 if not re.findall("@.", email):
219 raise ValidationError({"msg": "Enter a valid email"})
220 if GmailAPPModel.objects.filter(email=email).exists():
The local variable name hides the variable defined in the outer scope, making it inaccessible and might confuse.
filename = 'myfile.txt'
def read_file(filename): # This shadows the global `filename`
with open(filename) as file:
return file.readlines()
FILENAME = 'myfile.txt' # renamed global to UPPER_CASE as convention
def read_file(filename):
with open(filename) as file:
return file.readlines()
Another usual suspect of this is when you use the same parameter name inside a function as the global variable you are using. For example:
def run_app(app):
# This `app` shadows the global app...
app.run()
if __name__ == '__main__':
app = MyApp() # This is a global variable!
run_app(app)
To avoid this re-defining of a global, consider not defining app
as a global, but inside a main()
function instead:
def run_app(app):
# There is no longer a global `app` variable.
app.run()
def main():
app = MyApp()
run_app(app)
if __name__ == '__main__':
main()