def handle(self, *args, **options): print feed for entry in range(len(feed.entries)): # print entry # print feed.entries[entry] #RSSの内容を一件づつ処理する title = feed.entries[entry].title link = feed.entries[entry].link # value = feed.entries[entry].value #更新日を文字列として取得 # published_string = feed.entries[entry].published #更新日をdatetimeとして取得 # tmp = feed.entries[entry].published_parsed # published_datetime = datetime.fromtimestamp(mktime(tmp)) #表示 key = hashlib.md5(title.encode('utf_8')).hexdigest() result_article = Article.objects.filter(insert_key=key) if not len(result_article): article = Article() article.create_user = User.objects.get(id=1) article.title = title article.content = title article.status = u'P' article.insert_key = key article.save()
def test_only_published_articles_are_shown(self): c = Client() user1 = User.objects.create_user(username="******", email="*****@*****.**", password="******") article1 = Article() article1.title = "nicetitle" article1.content = "nicecontent" article1.status = "P" # Published article1.create_user = user1 article1.create_user.id = user1.id article1.save() article2 = Article() article2.title = "secondnicetitle" article2.content = "secondnicecontent" article2.status = "D" # Draft article2.create_user = user1 article2.create_user.id = user1.id article2.save() # user1 logs in self.client.login(username="******", password="******") response = self.client.get(reverse('articles')) self.assertEqual(response.status_code, 200) self.assertTrue('articles' in response.context) # make sure that the only (published) Article we have in our database is in that list self.assertEqual([article.pk for article in response.context['articles']], [1]) article_1 = response.context['articles'][0] self.assertEqual(article_1.title, 'nicetitle')
def test_validate_article_edition(self): c = Client() user1 = User.objects.create_user(username="******", email="*****@*****.**", password="******") user2 = User.objects.create_user(username="******", email="*****@*****.**", password="******") article = Article() article.title = "nicetitle" article.content = "nicecontent" article.create_user = user2 article.create_user.id = user2.id article.save() self.client.login(username="******", password="******") response = self.client.get(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) self.client.login(username="******", password="******") response = self.client.get(reverse('edit_article', kwargs={'id': '1'}), user=user2) self.assertEqual(response.status_code, 200) response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 200)
def handle(self, *args, **options): result_account_list = InstagramAccount.objects.all() for a in result_account_list: try: recent_media, next_ = api.user_recent_media(user_id=a.user_id, count=1) for media in recent_media: temp_title = "title" tags = "" key = hashlib.md5(media.images['standard_resolution'].url).hexdigest() result_article = Article.objects.filter(insert_key=key) if not len(result_article): if hasattr(media.caption, 'text'):temp_title = media.caption.text if hasattr(media, 'tags'): for t in media.tags: tags = t.name article = Article() article.create_user = User.objects.get(id=1) article.title = temp_title article.content = "![](" + media.images['standard_resolution'].url + ")" article.instagram_user_id = media.user.id article.instagram_user_name = media.user.username article.instagram_profile_url = media.user.profile_picture article.update_date = media.caption.created_at article.status = u'P' article.insert_key = key article.save() article.create_tags(tags) except: print "error"
def test_article_renders_template_and_slug(self): c = Client() user1 = User.objects.create_user(username="******", email="*****@*****.**", password="******") article1 = Article() article1.title = "nicetitle" article1.content = "nicecontent" article1.status = 'P' article1.slug = 'nice-title' article1.create_user = user1 article1.create_user.id = user1.id article1.save() # user1 logs in self.client.login(username="******", password="******") response = self.client.get(reverse('article', kwargs={'slug': 'nice-title'})) self.assertEqual(response.status_code, 200) self.assertTemplateUsed(response, 'articles/article.html') # check we've passed the right article into the context self.assertEquals(response.context['article'], article1) # check the article's title appears on the page self.assertIn(article1.title, response.content)
def handle(self, *args, **options): # result_account_list = InstagramAccount.objects.all() # for a in result_account_list: for n in user_name_list: # print username_to_id(n) user_id = username_to_id(n) if user_id: recent_media, next_ = api.user_recent_media(user_id=user_id, count=3) for media in recent_media: temp_title = "title" tags = "tags" key = hashlib.md5(media.images['standard_resolution'].url).hexdigest() result_article = Article.objects.filter(insert_key=key) # if not len(result_article): if True: if hasattr(media.caption, 'text'):temp_title = media.caption.text if hasattr(media, 'tags'): for t in media.tags: tags = t.name article = Article() article.create_user = User.objects.get(id=1) article.title = temp_title article.content = "![](" + media.images['standard_resolution'].url + ")" # article.content = article.content + """ # . # """ # article.content = article.content+temp_title print media.user.id print media.user.profile_picture print media.user.username article.instagram_user_id = media.user.id article.instagram_user_name = media.user.username article.instagram_profile_url = media.user.profile_picture article.status = u'P' article.insert_key = key article.save() article.create_tags(tags)
def write(request): if request.method == 'POST': form = ArticleForm(request.POST) if form.is_valid(): article = Article() article.create_user = request.user article.title = form.cleaned_data.get('title') article.content = form.cleaned_data.get('content') status = form.cleaned_data.get('status') if status in [Article.PUBLISHED, Article.DRAFT]: article.status = form.cleaned_data.get('status') article.save() tags = form.cleaned_data.get('tags') article.create_tags(tags) return redirect('/articles/') else: form = ArticleForm() return render(request, 'articles/write.html', {'form': form})
def write(request): if request.method == "POST": form = ArticleForm(request.POST) if form.is_valid(): article = Article() article.create_user = request.user article.title = form.cleaned_data.get("title") article.content = form.cleaned_data.get("content") status = form.cleaned_data.get("status") if status in [Article.PUBLISHED, Article.DRAFT]: article.status = form.cleaned_data.get("status") article.save() tags = form.cleaned_data.get("tags") article.create_tags(tags) return redirect("/articles/") else: form = ArticleForm() return render(request, "articles/write.html", {"form": form})
def post(self, request): form = ArticleForm(request.POST, request.FILES) a = request.POST.get('action').lower() if form.is_valid(): if a == 'publish': status = Article.PUBLISHED elif a == 'draft': status = Article.DRAFT article = Article( title = form.cleaned_data.get('title'), content = form.cleaned_data.get('content'), create_user = request.user, status = status ) article.save() tags = form.cleaned_data.get('tags') article.create_tags(tags) return redirect(self.success_url) else: return super(ArticleCreateView, self).form_invalid(form)
def test_validate_article_edition(self): c = Client() user1 = User.objects.create_user(username="******", email="*****@*****.**", password="******") user2 = User.objects.create_user(username="******", email="*****@*****.**", password="******") article_1 = Article() article_1.title = "nicetitle" article_1.content = "nicecontent" article_1.create_user = user2 article_1.create_user.id = user2.id article_1.save() # user1 logs in self.client.login(username="******", password="******") # tries to get to edit article response = self.client.get(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) # tries to post to edit article response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) # user2 logs in self.client.login(username="******", password="******") # tries the get response = self.client.get(reverse('edit_article', kwargs={'id': '1'}), user=user2) self.assertEqual(response.status_code, 200) # tries the post response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 200)
def test_validate_article_edition(self): user2 = User.objects.create_user(username="******", email="*****@*****.**", password="******") article = Article() article.title = "nicetitle" article.content = "nicecontent" article.create_user = user2 article.create_user.id = user2.id article.save() self.client.login(username="******", password="******") response = self.client.get(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 302) self.client.login(username="******", password="******") response = self.client.get(reverse('edit_article', kwargs={'id': '1'}), user=user2) self.assertEqual(response.status_code, 200) response = self.client.post(reverse('edit_article', kwargs={'id': '1'})) self.assertEqual(response.status_code, 200)