簡體   English   中英

Rails在運行時動態返回今天的日期

[英]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, 2016Friday, 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM