Grails从表单获取数据并存储

1.在views中创建commit文件夹。
commitindex.gsp页面

<div ng-controller="commitctr">

//表单
  <div class="row">
        <div class="form-group">
            <label for="starttime" class="col-sm-2 control-label">主标题</label>
            <div class="col-md-4">
                <input class="form-control" maxlength="20" name="title" ng-model="wareTask.title" type="text" id="starttime" placeholder="商品名称,最大不要超过20个字" />
            </div>
            <label for="endtime" class="col-sm-2 control-label">关键字</label>
            <div class="col-md-4">
                <input class="form-control" maxlength="20" ng-model="wareTask.keyLabel" name="keyLabel" type="text" id="endtime" placeholder="商品关键字,最大不要超过20个字" />
            </div>
        </div>


//提交
//input   ng-click = "submitForm(wareTask)"    
//ng-click是为了点击按钮是提交,wareTask是自己起的名字,然后上面的表单中的ng-model中的变量,也就是把这些表单中的数据就提交
<div class="col-md-3">
                <input type="button" value="保存"  class="btn btn-lg btn-success btn-block"
                       ng-click = "submitForm(wareTask)" />
            </div>
            <div class="col-md-3">
                <input type="button" value="关闭"  class="btn btn-lg btn-success btn-block" ng-click="closeWindow()"/>
            </div>

2.在web-app中js中创建文件夹commit
创建文件 commitindex.js(文件名要与commitindex.js相同)

var appid = "commitindex"
window.appModels.push(appid)
//
var app = angular.module(appid, ['ngUpload']);
app.controller('commitctr', function($scope,$http) {

    $scope.wareTask=[];

  $scope.submitForm=function (wareTask) {
  var test = $scope.wareTask;

//把数据传给commitcontroller  WEBROOT+'/commit/addWare'   commitcontroller中的addware方法
 $http({method : 'POST',url : WEBROOT+'/commit/addWare',params:$scope.wareTask,headers : window.utf8_headers})
            .success(function(rtndata, status, headers, config){
                //window.location.href=WEBROOT+'/ware/wareTask';
                $scope.wareTask = rtndata.data;
                var modalTitle = "保存成功,请上传图片";
                document.getElementById("modalTitle").innerHTML = modalTitle;
                $('#myModal').modal('show');
            })
            .error(function(data, status, headers, config){
            });
}

3.commitcontroller往数据库中存储数据

 def addWare() {
        try {
            //insert wareTask
            def ware = insert(params);
            render(contentType: "application/json") {
                [state: 'ok',data: ware]
            }
        } catch (RuntimeException e) {
            log.error(e);
            render(status: 503, text: e);
        }
    }


    def insert(params)
    {
        try{

            def ware = new Ware(params);

            if (!ware.save(flush: true))
            {
                ware.errors.allErrors.each{
                    log.error(it);
                }
                return ;
            }else {
                return ware;
            }
        }catch (RuntimeException e)
        {
            log.error(e);
            return ;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值