示例#1
0
def setup_database(request):
    message = None
    try:
        current_user = request.user.get_profile()
    except :
        UserProfile.objects.create(user=request.user).save()
        current_user = request.user.get_profile()
    if request.method == 'POST':
        form = user_profile_form(request.POST, instance=current_user)
        if form.is_valid():
            form.save()
        if request.POST['database_engine'] == 'sqlite':
            try:
                f = request.FILES['sqlite_database_file']#get sqlite database file
                handle_uploaded_file(f, DATABASE_PATH,current_user.user.username + '.db') #Save file content to uploaded folder
            except :
                c = RequestContext(request)
                message = 'You must input sqlite file'
                return render_to_response("registration/database_setup.html", {
                    'form' : form, 'message' : message}, context_instance = c)

    else:
        form = user_profile_form(instance=current_user)
    c = RequestContext(request)
    return render_to_response("registration/database_setup.html", {
        'form' : form}, context_instance = c)
示例#2
0
def setup_database(request):
    message = None
    try:
        current_user = request.user.get_profile()
    except:
        UserProfile.objects.create(user=request.user).save()
        current_user = request.user.get_profile()
    if request.method == 'POST':
        form = user_profile_form(request.POST, instance=current_user)
        if form.is_valid():
            form.save()
        if request.POST['database_engine'] == 'sqlite':
            try:
                f = request.FILES[
                    'sqlite_database_file']  #get sqlite database file
                handle_uploaded_file(
                    f, DATABASE_PATH, current_user.user.username +
                    '.db')  #Save file content to uploaded folder
            except:
                c = RequestContext(request)
                message = 'You must input sqlite file'
                return render_to_response("registration/database_setup.html", {
                    'form': form,
                    'message': message
                },
                                          context_instance=c)

    else:
        form = user_profile_form(instance=current_user)
    c = RequestContext(request)
    return render_to_response("registration/database_setup.html",
                              {'form': form},
                              context_instance=c)
示例#3
0
def upload_file(request):
    #This function handle upload action
    message = None
    if request.method == 'POST':  # If file fom is  submitted
        form = upload_file_form(request.POST, request.FILES)
        if form.is_valid():  #Cheking form validate
            f = request.FILES['file']
            fileName, fileExtension = os.path.splitext(f.name)
            if fileExtension != ('.xls'):
                message = 'wrong file extension'
            else:
                now = datetime.datetime.now()
                temp = Upload(filestore=str(now.year) + str(now.day) +
                              str(now.month) + str(now.hour) +
                              str(now.minute) + str(now.second) + f.name,
                              filename=f.name,
                              description=request.POST['description'],
                              upload_time=datetime.datetime.now())
                handle_uploaded_file(
                    f, FILE_UPLOAD_PATH,
                    temp.filestore)  #Save file content to uploaded folder
                generator, response = generate(temp.filestore, request)
                if generator != "ok":
                    message = generator
                    c = RequestContext(request)
                    os.remove(FILE_UPLOAD_PATH + '/' + temp.filestore)
                    return render_to_response(UPLOAD, {
                        'form': form,
                        'message': message
                    },
                                              context_instance=c)
                else:
                    temp.save()  #Save file information into database
                    message = "Uploaded successfully. Your uploaded and generated file will be stored shortly. You should download them in the file list page as soon as possible!"
                    c = RequestContext(request)
                    file_list = [temp]
                    return render_to_response(FILE_LIST, {
                        'file_list': file_list,
                        'message': message
                    },
                                              context_instance=c)

        else:
            message = "Error"
            #return HttpResponseRedirect('http://127.0.0.1:8000/admin')
    else:  #if file is not submitted that generate the upload form
        form = upload_file_form()

    c = RequestContext(request)
    return render_to_response(UPLOAD, {
        'form': form,
        'message': message
    },
                              context_instance=c)
示例#4
0
文件: views.py 项目: tungvx/reporting
def upload_file(request):
    # This function handle upload action
    message = None
    if request.method == "POST":  # If file fom is  submitted
        form = upload_file_form(request.POST, request.FILES)
        if form.is_valid():  # Cheking form validate
            f = request.FILES["file"]
            fileName, fileExtension = os.path.splitext(f.name)
            if fileExtension != (".xls"):
                message = "wrong file extension"
            else:
                now = datetime.datetime.now()
                temp = Upload(
                    filestore=str(now.year)
                    + str(now.day)
                    + str(now.month)
                    + str(now.hour)
                    + str(now.minute)
                    + str(now.second)
                    + f.name,
                    filename=f.name,
                    description=request.POST["description"],
                    upload_time=datetime.datetime.now(),
                )
                handle_uploaded_file(f, FILE_UPLOAD_PATH, temp.filestore)  # Save file content to uploaded folder
                generator, response = generate(temp.filestore, request)
                if generator != "ok":
                    message = generator
                    c = RequestContext(request)
                    os.remove(FILE_UPLOAD_PATH + "/" + temp.filestore)
                    return render_to_response(UPLOAD, {"form": form, "message": message}, context_instance=c)
                else:
                    temp.save()  # Save file information into database
                    message = "Uploaded successfully. Your uploaded and generated file will be stored shortly. You should download them in the file list page as soon as possible!"
                    c = RequestContext(request)
                    file_list = [temp]
                    return render_to_response(
                        FILE_LIST, {"file_list": file_list, "message": message}, context_instance=c
                    )

        else:
            message = "Error"
            # return HttpResponseRedirect('http://127.0.0.1:8000/admin')
    else:  # if file is not submitted that generate the upload form
        form = upload_file_form()

    c = RequestContext(request)
    return render_to_response(UPLOAD, {"form": form, "message": message}, context_instance=c)