def upload_file(request): if request.method == 'POST': form = UploadFileForm(data=request.POST, files=request.FILES) if form.is_valid(): form.save() return HttpResponseRedirect(reverse('/mainapp/')) else: '''form = UploadFileForm()''' print(form.files) for filename, file in request.FILES.items(): name = request.FILES[filename].name print(name) post = UploadFileForm2(data=request.POST, files=request.FILES) post = Post() post.profile_pic = request.FILES.get('uploadfile') post.pdf = request.FILES.get('uploadfile') print(request.FILES.get('uploadfile')) post.save() # convert('mainapp/input',200) ''' uploadfilemodel = UploadFileModel() uploadfilemodel.title = request.POST.get('uploadfile', None) print(request.POST.get('uploadfile')) uploadfilemodel.save()''' return render(request, 'mainapp/index.html')
def test(self): """Check if we save correct""" post = Post(title="test post", datetime=datetime.datetime.now(), picture=File('zp.jpg')) post.save() print(Post.objects.filter(id=1)) print(Post.objects.get(id=1).datetime) self.assertEquals("test post", Post.objects.get(id=1).title)
def extractnews(): sites=Site.objects.all() for site in sites: posts=parser.parser(site.rssurl) for post in posts: old_post= Post.objects.filter(url=post[2]) if (not(old_post)): utc=pytz.UTC new_post= Post(title=post[0],created_at=utc.localize(post[1]),url=post[2],site_id=site.id) new_post.save()
def crawlsite(request,id): crawl_site=site.objects.get(pk=id) try: obj=crawler.sitecrawler({crawl_site.url}) obj.startCrawl() utc=pytz.UTC for items in obj.Articles: new_post=Post(title=items[0],created_at=utc.localize(items[1]),url=items[2],site_id=id) new_post.save() return HttpResponse('Crawling Completed') except: return HttpResponse('Errors occured')
def handle(self, *args, **options): categories = load_from_json('categories') Category.objects.all().delete() [Category.objects.create(**category) for category in categories] if not XabrUser.objects.filter(username='******').exists(): XabrUser.objects.create_superuser(username='******', email='*****@*****.**', password='******') posts = load_from_json('posts') Post.objects.all().delete() # all() -> QuerySet -> .first() -> concrete object for post in posts: category_name = post['category'] _category = Category.objects.get(name=category_name) post['category'] = _category new_post = Post(**post) new_post.save()
def post(request): context={} if 'user' in request.session: context['user_name']=request.session.get('user') if 'error' in request.session: context['error']=request.session.get('error') del request.session['error'] if request.method == "POST": title=request.POST['title'] content=request.POST['content'] if 'user' in request.session: writer=request.session['email'] post=Post(writer_id=writer,title=title,content=content) post.save() return redirect('post') else: return redirect('/mainapp/post/?err='+"먼저 로그인을 해주세요.") else: page = int(request.GET.get('page', 1)) post=Post.objects.all() post=post.order_by('-writedate') paginator = Paginator(post, 10) pagelist = paginator.get_page(page) position = page - 1 # visible_page: Pagination에 보여질 개수 visible_page = 5 R = position // visible_page visible_list = [] for i in range((R * visible_page) + 1, ((R + 1) * visible_page) + 1): if i > paginator.num_pages: break visible_list.append(i) context["Post"]=pagelist context['total']=visible_list context['current']=page return render(request,'post.html',context)