Mam Date-Time, który tworzę tak:Jak dodać dni do Ecto.DateTime?
Ecto.DateTime.from_erl({{2015, 3, 10}, {0, 0, 0}})
Jest to aplikacja Phoenix. Chcę dodać do niego dni bez żadnej dodatkowej biblioteki innej firmy. W jaki sposób?
Mam Date-Time, który tworzę tak:Jak dodać dni do Ecto.DateTime?
Ecto.DateTime.from_erl({{2015, 3, 10}, {0, 0, 0}})
Jest to aplikacja Phoenix. Chcę dodać do niego dni bez żadnej dodatkowej biblioteki innej firmy. W jaki sposób?
Możesz użyć modułu Erlanga :calendar
do manipulowania datami bez dodatkowych zależności.
Standardowym sposobem dodawania dni byłoby użycie :calendar.date_to_gregorian_days/1
do dodania i konwersji z powrotem do formatu krotki z :calendar.gregorian_days_to_date/1
.
Prawidłowa składnia eliksir
weekday= :calendar.gregorian_days_to_date(:calendar.date_to_gregorian_days({2011, 7, 14}) - 90)
IO.inspect weekday
{2011, 4, 15}
dla datetime powiedzmy NO_OF_DAYS jest liczba dni u chcą dodać.
{{a,b,c},{hh,mm,ss}} = :calendar.universal_time()
{x,y,z} = :calendar.gregorian_days_to_date(:calendar.date_to_gregorian_days({a,b,c}) +no_of_days)
time = Ecto.DateTime.from_erl({{x,y,z},{hh,mm,ss}})
czy to nie dodatkowa zależność? faktycznie, mam DateTime. –
Nie, przychodzi w standardowej bibliotece erlang. – michalmuskala