纪念一下第一次写的django代码
@csrf_exempt
def new_project_detail(request):
if 'project_name' not in request.POST or 'project_position' not in request.POST or 'interest_rate' not in \
request.POST or 'financing_amount' not in request.POST or 'deadline' not in request.POST or \
'repayment_time' not in request.POST or 'project_detail' not in request.POST or 'project_type' \
not in request.POST or 'bonding_company' not in request.POST:
return json_response(False, '050002', 'lack of parameter')
try:
if store_data(request):
return json_response(True)
else:
return json_response(False, '020005', '数据库错误')
except ValueError:
return json_response(False, '020002', '数据字段错误')
except ProjectDetail.DoesNotExist:
return json_response(False, '020003', '信息不存在')
except Exception, e:
print e
return json_response(False, '020004', e)
@transaction.commit_manually
def store_data(request):
try:
project = ProjectDetail(project_name=request.POST.get("project_name"),
project_position=request.POST.get("project_position"),
interest_rate=request.POST.get("interest_rate"),
financing_amount=request.POST.get("financing_amount"),
deadline=request.POST.get("deadline"),
repayment_time=request.POST.get("repayment_time"),
project_detail=request.POST.get("project_detail"),
project_type=request.POST.get("project_type"))
project.save()
project.project_NO = request.POST.get("project_NO", datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S"))
project.project_purpose = request.POST.get("project_purpose", None)
if 'company_id' in request.POST:
company = Company.objects.get(id=request.POST.get("company_id"))
financial_status = CompanyFinancialStatus.objects.get(company=company)
project.company = company
project.financial_status = financial_status
bonding_company = BondingCompany.objects.get(id=request.POST.get("bonding_company"))
project.bonding_company.add(bonding_company)
project.status = PROJECT_STATUS_INIT
project.project_end_type = request.POST.get("project_end_type", PROJECT_END_TYPE_BY_AMOUNT)
project.save()
transaction.commit()
return True
except Company.DoesNotExist:
transaction.rollback()
return False
except CompanyFinancialStatus.DoesNotExist:
transaction.rollback()
return False
except BondingCompany.DoesNotExist:
transaction.rollback()
return False
except Exception, e:
print e
transaction.rollback()
return False
纪念一下第一次写的django代码的更多相关文章
- Java第一次写的流布局图形界面,留个纪念
package jisuanqi; import java.awt.*; public class MyFrame extends Frame{ //继承Frame类 public MyFrame() ...
- 第一次写博客Poj1044
Date bugs Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3005 Accepted: 889 Descript ...
- 第一次写python爬虫
花了4天终于把写完了把国内的几个漏洞平台爬完了,第一次写py,之前一直都在说学习,然后这周任务是把国内的漏洞信息爬取一下.花了1天学PY,剩下的1天一个.期间学习到了很多.总结如下: ======== ...
- 写漂亮C#代码的小技巧
第一次写博客,不知道代码用什么编辑,直接截图了,哈哈哈.... 我自己不喜欢看随便复制粘贴过来一堆代码的博客,所以,用些简单点的例子吧,希望对大家有帮助... ------------------- ...
- 第一次写博客,关于前端开发deMVC在js中的应用
对前端MVC MVC分别是model.view.controller的缩写,模型.视图.控制器.这些更加偏向于后台,在以前MVC是只属于后台的.当然随着技术的进步,前端的大牛们将后台的一些东西应用于前 ...
- HDU 2064 菜鸡第一次写博客
果然集训就是学长学姐天天传授水铜的动态规划和搜索,今天讲DP由于困意加上面瘫学长"听不懂就是你不行"的呵呵传授,全程梦游.最后面对连入门都算不上的几道动态规划,我的内心一片宁静,甚 ...
- 今天我自己第一次写了一个Windows批处理bat脚本,一起学习一下吧。
今天我自己第一次写了一个Windows批处理bat脚本,备注一下 事情原由:自己使用Java开发了一个加解密的工具.但是当把工具给别人使用的时候,别人还需要把代码编译打包, 然后还需要看一下代码里面的 ...
- 不写1行代码,在Mac上体验ASP.NET 5的最简单方法
昨天微软发布了ASP.NET 5 beta2(详见ASP.NET 5 Beta2 发布),对ASP.NET 5的好奇心又被激发了. 今天下午在Mac OS X上体验了一下ASP.NET 5,而且借助Y ...
- 只写104行代码!在nopCommerce中如何实现自动生成网站地图
表告诉我说你不知道nopCommerce是什么.它是目前.NET中最流行的完全开源网上商城,由俄罗斯的团队在2008年开始立项一直开发到现在已经是3.3版本了.代码目前托管在codeplex上,有兴趣 ...
随机推荐
- 超强1000 JQuery插件
转载:超强1000个jquery插件! http://www.cnblogs.com/chu888chu888/archive/2011/12/18/2292014.html
- 模拟美萍加密狗--Rockey2虚拟狗(二)
按好了WDK,看了一天的DSF例子GenericHID,直接头大了,就能改个VID,PID让美萍识别成R2的狗.其他的什么各种描述符,根本无从下手,怪不得网上没有驱动模拟的加密狗,确实太复杂了,特别像 ...
- 实战Windows 7的Windows Media Center
简介 本文讲述如何通过Windows 7的Windows Media Center搭建强劲的综合娱乐电视系统,同时讲述Windows Media Center的实际使用感受,以及如何通过Windows ...
- How to setup linked servers for SQL Server and Oracle 64 bit client
感谢作者:Tim Ford. 图文并茂. 原帖地址: http://www.mssqltips.com/sqlservertip/1433/how-to-setup-linked-servers-fo ...
- Bug驱动开发(Bug-driven development)
说实话,作为一个Domino开发者,像測试驱动开发(Test-driven development).功能驱动开发(Feature-driven development)之类软件开发的高大上的方法论( ...
- windows上运行npm Error: ENOENT, stat 'C:\Users\
node 中 npm报错 Error: ENOENT, stat C:\Users\Administrator\AppData\Roaming\npm 报错原因可能是修改了node的默认安装路径.于是 ...
- 碰撞缓冲效果的导航条 js
- 在Office Outlook 2013中收发QQ邮件
选择手动配置 选择第三项 点击More Settings,在Outgoing Server 勾选 如下 确认后,按下一步完成配置,此时会弹出对话框进行邮件发送测试.
- 使用jsonEditor打造一个复杂json编辑器
最近研究一个web版的json编辑器,在github中搜索,发现了这个利器. https://github.com/jdorn/json-editor 几经研究,终于把该控件的大部分功能研究透彻. 发 ...
- WPF qq界面(转)
原文:http://blog.csdn.net/u013981858/article/details/49130885 刚开始学WPF,自己写了个小东西,说实话写的并不好,好多东西不懂只是用现在懂的东 ...