Je veux des requêtes Rails similaires à:
UPDATE users SET name="test" WHERE name="test1"
User.update_all({name: 'test'},{name: 'test1'}) # deprecated since Rails 4
ou
User.where(name: 'test1').update_all(name: 'test')
User.where("name like 'test1'").update_all("name = 'test'")
@Vijay Chouhan, Essayez celui-ci, cela vous donnera la même requête que nécessaire.
User.where (name: "test") -> Ceci vous donnera le tableau ActiveRecord :: Relation afin de le convertir en tableau simple comme
u = User.where (nom: "test"). to_a
si u.count est égal à 1, utilise ceci comme requête finale -
**** Requête finale -> **** User.where (nom: "test"). to_a.first.update (nom: "test1")
else u.count est supérieur à 1, puis crée une boucle comme
**** Requête finale -> **** User.where (nom: "test"). to_a.each {| x | x.update (name: "test1")}
Cela peut vous être utile ....
**OR**
Hey @Vijay Chouhan,
Tout à l'heure, j'ai trouvé la meilleure solution:
User.where (name: test) .update_all ("name = 'test1'")