def get_site(self, required=False, create_if_missing=False): """Returns the Site object given by the URL.""" if self.response_dict().site: return self.response_dict().site domain = self.url_arg(0) if domain: key_name = Site.key_name_from_domain(domain) site = Site.get_by_key_name(key_name) if not site and create_if_missing: # create a site (but don't save it) site = Site(key_name=key_name, domain=domain) if site: self.response_dict(site = site) # for the template return site if required: raise NotFoundException("site not found")