在没有字段更改的Rails应用程序中防止更新记录-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

在没有字段更改的Rails应用程序中防止更新记录

2019-04-09 16:23:39 1058 1

我正在寻找一种方法来防止用户在没有更改任何值时单击我的Rails应用程序中的Update方法的更新。如果他们不更改任何值,我的UPDATE方法将在某些字段中写入空值,因此如果用户没有更改任何详细信息并且只是单击更新,我需要应用程序以防止更新记录。

def update

if @client.update(client_params)
  redirect_to @client, notice: 'Client was successfully updated.'
else
  render :edit
end

end

取消 提交回答
全部回答(1)
  • 小六码奴
    2019-07-17 23:33:01

    您可以结合使用attributes=和changed?方法来实现目标。

    attributes=mass将哈希值分配给模型的实例。 changed?如果模型上的任何值更改了它的值,则返回true。

    请看以下示例:

    [1] pry(main)> u = User.all.sample # this returns a random user
    => #
    [2] pry(main)> u.changed?
    => false
    [3] pry(main)> u.attributes = { email: "bob@test.com" }
    => {:email=>"bob@test.com"}
    [4] pry(main)> u.changed?
    => false
    [5] pry(main)> u.email
    => "bob@test.com"
    [6] pry(main)> u.attributes = { email: "alice@test.com" }
    => {:email=>"alice@test.com"}
    [7] pry(main)> u.changed?
    => true
    [8] pry(main)> u.email
    => "alice@test.com"
    [9] pry(main)> u.save
    => true
    应用于您的代码段时。

    def update
    @client.attributes = client_params

    if @client.changed? && @client.save

    redirect_to @client, notice: 'Client was successfully updated.'

    else

    render :edit

    end
    end

    0 0
相关问答

4

回答

【已解决】SLB后端服务器端口/健康检查异常的问题

ae86 2014-11-06 11:30:44 24638浏览量 回答数 4

8

回答

为什么阿里云的fullvirtualization的性能会好过盛大的paravirtualization

ap1191r2t 2012-06-26 19:34:14 15774浏览量 回答数 8

1

回答

如何深入理解StatsD与Graphite?

doudou1 2015-11-02 17:53:11 15030浏览量 回答数 1

2

回答

开课吧携手OneAPM:在线教育如何应对千万级用户的挑战?

sunny夏筱 2015-11-02 18:05:57 12450浏览量 回答数 2

7

回答

钉钉开放平台代码DEMO征集暨论坛版主招募

君信 2015-09-30 14:43:31 14516浏览量 回答数 7

27

回答

调查:第二赛季希望有哪些机器学习的算法包

天猫_得福 2014-04-10 22:19:00 20994浏览量 回答数 27

3

回答

《微软开源:如何使用微软公有云Azure上的开源软件》

开源 2013-09-22 11:51:29 11980浏览量 回答数 3

2

回答

【转载】:云计算时代,停止学习,开始创造

wangleheng 2012-08-12 18:34:26 12271浏览量 回答数 2

7

回答

阿里云OSS开发与应用集合

寒喵 2016-11-08 22:59:55 20039浏览量 回答数 7

2

回答

在阿里云上搭建Discourse轻论坛教程

i兼济天下 2016-01-26 17:02:23 17114浏览量 回答数 2
+关注
8
文章
487
问答
问答排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载