簡體   English   中英

Rails:僅更新實體的某些屬性

[英]Rails: Update only some attributes of an entity

我是 Rails 新手,我想知道是否有可能在沒有經典find,modify然后保存的情況下更新實體的某些屬性。

因為它需要 2 個請求到 databe,所以它不是最優的

假設我們有一個用戶,我們想更改她的用戶名:

正常的方式

u = User.find(id)
u.username = 'newUsername'
u.save

我正在尋找的方式:

User.**XXXX**(id:Y,username: 'newUsername')

Ps:更新方法需要所有屬性else-這里方法更新none給定屬性為' nil '

正如你在這里看到的。

您可以使用要更新的參數在 class 上調用 .update。

# Updates one record
Person.update(15, user_name: "Samuel", group: "expert")

# Updates multiple records
people = { 1 => { "first_name" => "David" }, 2 => { "first_name" => "Jeremy" } }
Person.update(people.keys, people.values)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM