def insert_action(request): #try: inputed_isbn = request.POST['br-input-isbn'] inputed_bcover = request.POST['br-input-bcover'] inputed_bname = request.POST['br-input-bname'] inputed_author = request.POST['br-input-author'] inputed_translator = request.POST['br-input-translator'] inputed_publisher = request.POST['br-input-publisher'] inputed_byear = request.POST['br-input-byear'] inputed_pagination = request.POST['br-input-pagination'] inputed_price = request.POST['br-input-price'] inputed_insertednum = request.POST['br-input-insertednum'] try: book=Book.objects.get(isbn=inputed_isbn) book.bname=B(inputed_bname) book.author=B(inputed_author) book.translator=B(inputed_translator) book.byear=B(inputed_byear) book.pagination=int(inputed_pagination) book.price=float(inputed_price) # TODO : 封面应该下载到本地储存或SAE storage book.bcover=B(inputed_bcover) book.publisher=B(inputed_publisher) book.totalnum=book.totalnum+int(inputed_insertednum) book.available=book.available+int(inputed_insertednum) book.save() return HttpResponseRedirect("/success/insert") except Book.DoesNotExist: book=Book( isbn=B(inputed_isbn), bname=B(inputed_bname), author=B(inputed_author), translator=B(inputed_translator), byear=B(inputed_byear), pagination = 0, price=float(inputed_price), # TODO : 封面应该下载到本地储存或SAE storage bcover=B(inputed_bcover), publisher=B(inputed_publisher), totalnum=int(inputed_insertednum), available=int(inputed_insertednum), ) if(inputed_pagination!=''): book.pagination=int(inputed_pagination) book.save() return HttpResponseRedirect("/success/insert") except Book.MultipleObjectsReturned as e: #isbn不唯一 #TODO:其实这里新建一条记录可能比较好 raise Exception(Book.STATIC_BOOKS_WITH_SAME_ISBN+unicode(e)) """