[英]Rails Dynamically return today's date at runtime
出於演示目的:假設我將模塊TodayDynamicDate
包含在以下模型Foo
中:
# app/models/concerns/today_dynamic_date.rb
module TodayDynamicDate
extend ActiveSupport::Concern
def todays_date
Date.today
end
end
#app/models/foo.rb
class Foo < ApplicationRecord
include TodayDynamicDate
end
我想知道是否可以在#todays_date
方法中使用該混合方法, #todays_date
我所願。
我希望方法#todays_date
動態返回該方法運行的日期。 我不希望它返回啟動Rails服務器的靜態日期。
例:
假設我今天Friday, July 1st, 2016
, Friday, July 1st, 2016
啟動服務器。 這是我希望今天返回的方法:
Foo.new.todays_date
=> Fri, 01, Jul 2016
服務器繼續運行,現在是Tuesday, July 5th, 2016
。 在應用程序中調用了相同的方法,這是我希望它返回的結果:
# dynamically returning the date that the method was called
Foo.new.todays_date
=> Tues, 05, July 2016
我想確保它不會返回以下內容:
# returning a static date
Foo.new.todays_date
=> Fri, 01, Jul 2016
問題:我的實現會返回動態日期嗎? 如果它將不返回動態日期:我將如何使用混合方法todays_date
做到這todays_date
?
答案是肯定的。 每次調用Date.today
都將返回當前日期。
todays_date
不是類(您稱為靜態)變量,而是方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.