में 'स्वयं' का उपयोग कब इस विधि:रूबी
def format_stations_and_date
from_station.titelize! if from_station.respond_to?(:titleize!)
to_station.titleize! if to_station.respond_to?(:titleize!)
if date.respond_to?(:to_date)
date = date.to_date
end
end
जब date
नहीं के बराबर है इस त्रुटि के साथ विफल:
NoMethodError (You have a nil object when you didn't expect it!
The error occurred while evaluating nil.to_date):
app/models/schedule.rb:87:in `format_stations_and_date'
app/controllers/schedules_controller.rb:15:in `show'
हालांकि, अगर मैं date = date.to_date
self.date = self.date.to_date
को बदलने के लिए, विधि ठीक से काम करता ।
क्या चल रहा है? आम तौर पर, मुझे self
लिखना कब होगा?
संपादित करें: यह सवाल से संबंधित नहीं है, लेकिन कृपया ध्यान दें कि "शीर्षककरण" नहीं है! तरीका।
संभावित डुप्लिकेट [रूबी सेटर्स को "स्वयं" क्यों चाहिए। कक्षा के भीतर योग्यता?] (http://stackoverflow.com/questions/44715/why-do-ruby-setters-need-self-qualification-within-the-class) –