هل من الممكن تحديث سمات النموذج باستخدام أوم و Redis DB هو روبي؟
سؤال
أنا آخذ نظرة أولى على الراهب و APIs أوم / Redis ولدي سؤال بسيط. هل من الممكن تحديث السمات على كائنات نموذجية باستخدام OHM / REDIS؟
class Event < Ohm::Model
attribute :name
index :name
end
Event.create(:name => "A mistake made here...")
@event = Event.find(:id, 25)
@event.name = "I want to edit my mistake... but do not know how"
@event.save
باستخدام API أوم يمكنني القيام بما يلي
require 'ohm'
Ohm.connect
Ohm.redis.set :foo, "bar"
Ohm.redis.set :foo, "bat"
لا يبدو أن تجد أي معلومات في مستندات حول كيفية إنجاز هذا. شكرا مقدما!
المحلول
لست متأكدا من أنني أفهم تماما ما تسأل عنه، ولكن مع التعليمات البرمجية التالية يتم تحديث السمة.
require 'rubygems'
require 'ohm'
Ohm.connect
class Event < Ohm::Model
attribute :name
index :name
end
Event.create(:name => "A mistake made here...")
@event = Event.find(:name => "A mistake made here...").first
puts @event.inspect
@event.name = "I want to edit my mistake... but do not know how"
@event.save
puts @event.inspect
@event2 = Event.find(:name => "I want to edit my mistake... but do not know how").first
puts @event2.inspect
ثم احصل على:
#<Event:1 name="A mistake made here...">
#<Event:1 name="I want to edit my mistake... but do not know how">
#<Event:1 name="I want to edit my mistake... but do not know how">
لذلك يتم تحديث سمة الاسم.
نصائح أخرى
يجب أن تكون قادرا على القيام بذلك باستخدام منتظم #save
. وبعد يمكنك نشر المزيد من السياق لمعرفة سبب عدم العمل؟
event = Event[25]
event.name = "Updated name"
event.save
لا تنتمي إلى StackOverflow