def add_model(request): if request.method == "POST": form = NewPost(request.POST) if form.is_valid(): model_instance = form.save(commit=False) model_instance.timestamp = timezone.now() model_instance.save() if User.objects.filter(username=model_instance.author).exists(): new_author = User.objects.get(username=model_instance.author) else: new_author = User.objects.create_user(model_instance.author) newpost = Post( title=model_instance.title, text=model_instance.text, author=new_author, created_date=model_instance.timestamp, modified_date=model_instance.timestamp, published_date=model_instance.timestamp, ) newpost.save() return redirect("/") else: form = NewPost() return render(request, "blogging/add.html", {"form": form})
def setUp(self): self.now = datetime.datetime.utcnow().replace(tzinfo=utc) self.timedelta = datetime.timedelta(15) author = User.objects.get(pk=1) for count in range(1, 11): post = Post(title=f"Post {count} Title", text="foo", author=author) if count < 6: pubdate = self.now - self.timedelta * count post.published_date = pubdate post.save()
def post(self, request): post = Post() post.user = request.user form = PostForm(request.POST, instance=post) if form.is_valid(): post = form.save() form = PostForm() url = reverse("post_detail_page", args=[post.pk]) message = "Post created successfully! " message += '<a href="{0}">View</a>'.format(url) messages.success(request, message) return render(request, "post_form.html", {'form': form})
def setUp(self): self.now = datetime.datetime.utcnow().replace(tzinfo=utc) self.timedelta = datetime.timedelta(15) author = User.objects.get(pk=1) for count in range(1, 11): post = Post(title='Post %d Title' % count, text='foo', author=author) if count < 6: # publish the first five posts pubdate = self.now - self.timedelta * count post.published_date = pubdate post.save()
def setUp(self): self.now = datetime.datetime.utcnow().replace(tzinfo=utc) self.timedelta = datetime.timedelta(15) author = User.objects.get(pk=1) for count in range(1, 11): post = Post(title="Post %d Title" % count, body="This is a test", author=author) if count < 6: pubdate = self.now - self.timedelta * count post.published_date = pubdate post.save()
def setUp(self): self.now = datetime.datetime.utcnow().replace(tzinfo=utc) self.timedelta = datetime.timedelta(15) # print('now is', self.now) # print('time delta is', self.timedelta) author = User.objects.get(pk=1) for count in range(1, 11): post = Post(title="Post %d Title" % count, text="foo", author=author) if count < 6: # publish the first 5 posts pubdate = self.now - self.timedelta * count post.published_date = pubdate post.save()
def setUp(self): """ setup """ self.user = User.objects.get(pk=1) self.post = Post( title="test title", text="nice text content", author=self.user, )
def test_string_representation(self): # Given: a title expected = "This is a title" # When: the post is created p1 = Post(title=expected) actual = str(p1) # Then: The class __str__ should be the title self.assertEqual(expected, actual)
def test_string_representation(self): expected = "This is a title" p1 = Post(title=expected) actual = str(p1) self.assertEqual(expected, actual)