def test_slug_unique(self): """Comprueba que el slug sea único.""" category = Category( name="Categoría 1", description="Descripción categoría 1", image=tempfile.NamedTemporaryFile(suffix=".jpg").name) with self.assertRaises(IntegrityError): category.save()
def app_db_initialization(): product_categories = [ 'Assortments', 'Bottle Rockets', 'Cakes - 200g', 'Cakes - 500g', 'Cakes - NOAB', 'Firecrackers', 'Fountains', 'Novelties', 'Reloadable Shells', 'Roman Candles', 'Single Shot Tubes', 'Skyrockets' ] for category in product_categories: new_category = Category(name=category) new_category.save() #todo remove
def cats(request): cat_req = urlopen("https://www.eventbriteapi.com/v3/categories/?token=A3KV5OGJFN7YWZI6JLIC") json_in = cat_req.read() decoded = json.loads(json_in) for cat1 in decoded['categories']: p = Category(cat_id = cat1['id'], short_name = cat1['short_name']) p.save() #return user to now-populated index page return HttpResponseRedirect(reverse('events:index'))
def test_name_length_validation(self): """Comprueba la longitud del nombre.""" category = Category( name="Officia mollit esse eiusmod dolor mollit Lorem. Ut sint "\ "deseruntalli", slug=slugify("Officia mollit esse eiusmod dolor mollit Lorem."), description="Lorem ipsum dolor sit amet, consectetu", image=tempfile.NamedTemporaryFile(suffix=".jpg").name ) with self.assertRaisesRegex(ValidationError, "(name).*(64)"): category.full_clean()
def test_description_length_validation(self): """Comprueba la longitud de la descripción.""" category = Category( name="Officia mollit esse eiusmod dolor mollit Lorem.", slug=slugify("Officia mollit esse eiusmod dolor mollit Lorem."), description="Lorem ipsum dolor sit amet, consectetuer adipiscing "\ "elit. Aenean commodo ligula eget dolor. Aenean massa. Cum "\ "sociis natoque penatibus et magnis dis parturient montes, na", image=tempfile.NamedTemporaryFile(suffix=".jpg").name ) with self.assertRaisesRegex(ValidationError, "(description).*(140)"): category.full_clean()
def create_event(request): user = request.user if user.is_staff: if request.method == 'POST': res = request.POST files = request.FILES if validate_event(res, files): categories = [] for category in res['categories'].split(): category_object = Category.objects.filter(name=category) if category_object.count(): categories.append(category_object.first()) else: categories.append(Category(name=category)) event = Event(title=res['title'], start_date=parse(res['start_date']), finish_date=parse(res['finish_date']), organizer=res['organizer'], place=res['place'], cover_url=files['cover_url'], logo_url=files['logo_url'], description=res['description']) print(files) print(res) print("files['lecturer_photo']", files['lecturer_photo']) lecturer = Lecturer(name=res['name'], resume_url=files['resume_url'], photo_url=files['lecturer_photo']) lecture = Lecture(title=res['lecture_title']) event.save() lecturer.save() lecture.lecturer = lecturer lecture.event = event lecture.save() for category in categories: category.save() event.categories.add(category) return render(request, 'users/create_event.html', { 'user': request.user, 'succeed': True }) else: return render(request, 'users/create_event.html', { 'user': request.user, 'not_valid': True }) else: return render(request, 'users/create_event.html', {'user': request.user}) else: raise PermissionDenied
def setUpClass(cls): super(EventManagingTest, cls).setUpClass() Category.objects.bulk_create([ Category(category="Art & Culture"), Category(category="Food"), Category(category="Sport"), Category(category="Music"), Category(category="Other") ]) cls.user = EvUser.objects.create_user(username="******", password='******', email="*****@*****.**", is_organizer=False, profile_image=None) cls.organizer = EvUser.objects.create_user(username="******", organization_name="org", password='******', email="*****@*****.**", is_organizer=True, profile_image=None)
def save_categories_in_bulk(self, graph, data_source): categories = [] for subject in graph.subjects(RDF.type, SKOS.Concept): if is_deprecated(graph, subject): continue category = Category(data_source=data_source) category.aggregate = is_aggregate_concept(graph, subject) category.created_time = BaseModel.now() category.last_modified_time = BaseModel.now() category.url = str(subject) for _, literal in graph.preferredLabel(subject): with active_language(literal.language): category.name = str(literal) categories.append(category) Category.objects.bulk_create(categories, batch_size=1000)
def save_category(self, syncher, graph, subject, data_source, category_labels, save_set): category = syncher.get(subject) if not category: category = Category(data_source=self.data_source, url=subject) category._changed = True category._created = True else: category._created = False for _, literal in graph.preferredLabel(subject): with active_language(literal.language): if category.name != str(literal): category.name = str(literal) category._changed = True if category._changed: category.save() category.alt_labels.add(category_labels.get(str(subject), [])) if not getattr(category, '_found', False): syncher.mark(category) return category
def event_update(request, event_id): if request.user.is_staff: if request.method == 'POST': res = request.POST files = request.FILES if validate_event(res, files): print(files) print(res) print("files['lecturer_photo']", files['lecturer_photo']) categories = [] for category in res['categories'].split(): category_object = Category.objects.filter(name=category) if category_object.count(): categories.append(category_object.first()) else: categories.append(Category(name=category)) event = get_object_or_404(Event, pk=event_id) event.title = res['title'] event.start_date = parse(res['start_date']) event.finish_date = parse(res['finish_date']) event.organizer = res['organizer'] event.place = res['place'] event.cover_url = files['cover_url'] event.logo_url = files['logo_url'] description = res['description'] lecture = event.lecture_set.all()[0] lecture.title = res['lecture_title'] print(lecture.lecturer) print(lecture.lecturer.photo_url) lecture.lecturer.name = res['name'] lecture.lecturer.resume_url = files['resume_url'] lecture.lecturer.photo_url = files['lecturer_photo'] event.save() lecture.save() lecture.lecturer.save() for category in categories: category.save() print(category) print(Category.objects.filter(name=category.name)) if not Category.objects.filter(name=category.name).count(): event.categories.add(category) return render( request, 'users/update_event.html', { 'user': request.user, 'succeed': True, 'event': event, 'finish_date': res['finish_date'], 'categories': categories, 'lecture': lecture, 'start_date': res['start_date'] }) else: event = get_object_or_404(Event, pk=event_id) categories = [category.name for category in event.categories.all()] lecture = event.lecture_set.all()[0] start_date = event.start_date.strftime('%Y-%m-%dT%H:%M') finish_date = event.finish_date.strftime('%Y-%m-%dT%H:%M') return render( request, 'users/update_event.html', { 'user': request.user, 'event': event, 'categories': categories, 'lecture': lecture, 'start_date': start_date, 'finish_date': finish_date }) raise PermissionDenied
def setUpClass(cls): super(FilterEventsTest, cls).setUpClass() Category.objects.bulk_create([ Category(category="Art & Culture"), Category(category="Food"), Category(category="Sport"), Category(category="Music"), Category(category="Other") ]) cls.user = EvUser.objects.create_user(username="******", password='******', email="*****@*****.**", is_organizer=False, profile_image=None) cls.organizer = EvUser.objects.create_user(username="******", organization_name="org", password='******', email="*****@*****.**", is_organizer=True, profile_image=None) cls.organizer2 = EvUser.objects.create_user( username="******", organization_name="org2", password='******', email="*****@*****.**", is_organizer=True, profile_image=None) cls.A1 = Event.objects.create( organizer=cls.organizer, name="TestEvent1A", status="A", start_date=datetime.date.today().__str__(), venue="TestVenue") cls.A2 = Event.objects.create( organizer=cls.organizer2, name="TestEvent2A", status="A", start_date=datetime.date.today().__str__(), venue="TestVenue") cls.A3 = Event.objects.create( organizer=cls.organizer2, name="TestEvent3A", status="A", start_date=datetime.date.today().__str__(), venue="TestVenue") cls.S = Event.objects.create( organizer=cls.organizer, name="TestEvent2S", status="S", start_date=datetime.date.today().__str__(), ) cls.C = Event.objects.create( organizer=cls.organizer, name="TestEvent3C", status="C", start_date=datetime.date.today().__str__(), ) cls.A1.categories.add(Category.objects.get(id=6)) cls.A2.categories.add(Category.objects.get(id=6), Category.objects.get(id=7), Category.objects.get(id=8)) cls.A3.categories.add(Category.objects.get(id=9))