def source_create(request, template_name='source/source_form.html'): if request.method == 'POST': form = SkipperForm(request.POST) if form.is_valid(): source = Source() source.text = form.cleaned_data['text'] source.title = form.cleaned_data['title'] source.owner = request.user.first_name + ' ' + request.user.last_name source.save() # Now build it. build(user=request.user, sourceobj=source) cache.clear() return redirect('source_list') else: return render(request, template_name, {'form': form}) else: default = ''' coordinator "Name" "Email" "Url" contact "Email" description { } ''' form = SkipperForm({'text': default, 'title': 'New Role'}) return render(request, template_name, {'form': form})
def source_create(request, template_name='source/source_form.html'): if request.method == 'POST' : form = SkipperForm(request.POST) if form.is_valid(): source = Source() source.text = form.cleaned_data['text'] source.title = form.cleaned_data['title'] source.owner = request.user.first_name + ' ' + request.user.last_name source.save() # Now build it. build(user=request.user, sourceobj=source) cache.clear() return redirect('source_list') else: return render(request, template_name, {'form':form}) else: default = ''' coordinator "Name" "Email" "Url" contact "Email" description { } ''' form = SkipperForm( {'text': default, 'title': 'New Role'} ) return render(request, template_name, {'form':form})
def source_update(request, pk, template_name='source/source_form.html'): next_page = request.GET.get('next', None) source = Source.objects.get(title=pk) if source == None: raise Http404("Source does not exist") if request.method == 'POST': form = SkipperForm(request.POST) if form.is_valid(): try: with transaction.atomic(): # There is no update, sources must be deleted and remade. # on_delete=CASCADE is emulated, but it works when my objects don't suck. source.delete() # Create a new one source = Source() source.title = pk source.text = form.cleaned_data['text'] source.owner = request.user.first_name + ' ' + request.user.last_name source.save() # Now build it. build(user=request.user, sourceobj=source) except IntegrityError as e: print "Transaction error:", e cache.clear() if form.cleaned_data['next'] != "": return redirect('jobs', form.cleaned_data['next']) else: return redirect('source_list') else: return render(request, template_name, { 'title': pk, 'form': form, 'next': next_page }) else: form = SkipperForm({'text': source.text, 'title': source.title}) return render(request, template_name, { 'title': pk, 'form': form, 'next': next_page })
def upload(): uf = request.files['input-b1'] savepath, new_filename = uploadfile(uf, 'index') source = Source(path=savepath,filename=new_filename) user_id = session.get('user_id') user = User.query.filter(User.id == user_id).first() source.owner = user try: db.session.add(source) db.session.commit() except Exception as reason: s=str(reason) list = re.split(r'[()]+', s) flash(u'Upload Failed:(%s)(%%s)'%list[1]%list[3]) return redirect(url_for('index')) else: flash(u'Upload Succ') return redirect(url_for('index'))
def upload(): uf = request.files['input-b1'] file_dir=os.path.join(basedir,app.config['UPLOAD_FOLDER']) if not os.path.exists(file_dir): os.makedirs(file_dir) if uf and allowed_file(uf.filename): # size = len(uf.read()) size = 1 if size<51200000: filename = secure_filename(uf.filename) # currentpath = os.path.abspath(os.path.dirname(__file__)) # ossep = os.path.sep ext = filename.rsplit('.',1)[1] name = filename.rsplit('.',1)[0] unix_time = int(time.time()) new_filename=name + '_' + str(unix_time)+'.'+ext # savepath = currentpath + ossep+'uploadfolder'+ ossep + filename savepath = os.path.join(file_dir,new_filename) # uf.save(savepath) uf.save(savepath) source = Source(path=savepath,filename=new_filename) user_id = session.get('user_id') user = User.query.filter(User.id == user_id).first() source.owner = user try: db.session.add(source) db.session.commit() except Exception as reason: s=str(reason) list = re.split(r'[()]+', s) flash(u'Upload Failed:(%s)(%%s)'%list[1]%list[3]) return redirect(url_for('index')) else: flash(u'Upload Succ') return redirect(url_for('index')) else: flash(u'error:File size should less than 50M') return redirect(url_for('index')) else: flash(u'error:File type should be xls or xlsx') return redirect(url_for('index'))
def source_update(request, pk, template_name='source/source_form.html'): next_page = request.GET.get('next', None) source = Source.objects.get(title=pk) if source == None : raise Http404("Source does not exist") if request.method=='POST': form = SkipperForm(request.POST) if form.is_valid(): try: with transaction.atomic() : # There is no update, sources must be deleted and remade. # on_delete=CASCADE is emulated, but it works when my objects don't suck. source.delete() # Create a new one source = Source() source.title = pk source.text = form.cleaned_data['text'] source.owner = request.user.first_name + ' ' + request.user.last_name source.save() # Now build it. build(user=request.user, sourceobj=source) except IntegrityError as e: print "Transaction error:", e cache.clear() if form.cleaned_data['next'] != "" : return redirect('jobs', form.cleaned_data['next']) else: return redirect('source_list') else: return render(request, template_name, {'title': pk, 'form':form, 'next': next_page}) else: form = SkipperForm({'text': source.text, 'title': source.title}) return render(request, template_name, {'title': pk, 'form': form, 'next': next_page})