Rails CRUD Cheatsheet

Metod Etkı alanı Örnek NOT
new Model Student.new

Student.new(:adi => “Serhat”, :soyadi => “Dundar”)

Model bir nesneye atandığında, nesnenin “save” metodu ile kayıt edilmesi gerekir.
new_record? Nesne student.new_record? true veya false döndürür.
attributes Nesne student.attributes attribute’leri hash olarak döndürür.
*attribute_ismi Nesne student.finalnotu = “65” Model ismi komut olarak çağırılarak mümkün attribute’ler listelenebilir.
save Nesne student.save SQL muadili: INSERT INTO. Eğer nesne daha önceden mevcutsa UPDATE.
count Model & Nesne student.count

Student.count

SQL muadili: SELECT COUNT(*) FROM “students”
create Model Student.create(:adi => “Serhat”, :soyadi => “Dundar”)

veya;

x = {:ad => “Serhat”, :soyad=> “Dundar”}

Student.create(x)

“new” metodundan farklı olarak doğrudan save işlemi yapar. SQL muadili: INSERT INTO
find(:id) Model & Nesne Student.find(1)

Student.find([1,5])

“find” metodunu bir nesneye atayıp, daha sonra nesneyi çaşitli işlerde kullanabiliriz. SQL muadili: SELECT “students”.* FROM “students” WHERE “students”.”id” = ? LIMIT 1  [[“id”, 1]]
first Model & Nesne Student.first SQL muadili: SELECT “students”.* FROM “students” ORDER BY “students”.”id” ASC LIMIT 1
last Model & Nesne Student.last SQL muadili: SELECT “students”.* FROM “students” ORDER BY “students”.”id” DESC LIMIT 1
all Model Student.all SQL muadili: SELECT “students”.* FROM “students”
class Model & Nesne Student.class [Class]

student.class [Array]

size Nesne student.size Nesnenin boyutunu verir.
order Model Student.order(“ogrenci_no”) SQL muadili: SELECT “students”.* FROM “students” ORDER BY ogrenci_no
where Model Student.where(:ogrenci_no => “09310009”) SQL muadili: SELECT “students”.* FROM “students” WHERE “students”.”title” = ‘My first post’
update_attributes Nesne student.update_attributes(:ad => “Mustafa”, :ogrenci_no => “08310009”) true veya false döndürür.
destroy Nesne & Model Nesne üzerinde kullanım:

student = Student.last && student.destroy

Model üzerinde kullanım:

Student.last.destroy

veya;

Student.destroy(1)

veya;

Student.destroy([1,5])

DELETE FROM students WHERE id = 5;

* Nesne üzerinde kullanıldığında, kayıt silinmiş olmasına rağmen “student” nesnesi hala bellekte tutulur, fakat durumu read-only’dir, yani frozen durumdadır.

delete Model Student.delete(1)

veya;

Student.delete([1,5])

“find” ve “create” gibi işlemi anında uygularlar. SQL muadili: DELETE FROM “students” WHERE “students”.”id” = 1
delete_all Model Student.delete_all(“ogrenci_no = 09310009”) “delete”den farklı olarak şartlı silme işlemlerini yapar.

* delete_all argümansız çalıştırılırsa tablonun tüm satırlarını siler!

“Model” üzerinde etki gösteren metodlar, kimi kaynaklarda “class” üzerinde etki gösteriyor şeklinde belirtilebilir. Model’lerde class olduğu için Model = Class varsayılabilir.

1 thought on “Rails CRUD Cheatsheet”

Leave a Reply