Как использовать мой маленький класс от ruby ​​на ruby ​​на рельсах - PullRequest
2 голосов
/ 17 марта 2019

Я написал один маленький урок по ruby, и я хочу использовать ее, на ruby ​​на рельсах, для показа на каждой странице, даты и часов на французском, как быть в хорошем положении, она на том, чтобы иметь на каждом просмотре? если можно объяснить, все продолжается? Большое спасибо, Вот она ..

# Petite classe pour récupérer le jour et l'heure en Français
class JourFrancais

    def initialize()
        self.jourj
    end
    def jourj
        jours_ouvrables = {Lundi: 'monday', Mardi: 'tuesday', Mercredi: 'wednesday', Jeudi: 'thursday', Vendredi: 'friday', Samedi: 'saturday', Dimanche: 'sunday'}


        jours_ouvrables.each do |key, value|
            if Time.now.strftime("%A").downcase == value
            puts "Nous sommes le #{key} " + Time.now.strftime("%d/%m/%Y") + " et il est " + Time.now.strftime("%H:%M")

            end
        end
    end 
end

спасибо за вашу помощь ..

Ответы [ 2 ]

2 голосов
/ 17 марта 2019

Ваша библиотека

Вот небольшой рефакторинг вашего класса:

# Petite classe pour récupérer le jour et l'heure en Français
class JourFrancais
  JOURS = {"Monday"=>"Lundi", "Tuesday"=>"Mardi", "Wednesday"=>"Mercredi", "Thursday"=>"Jeudi", "Friday"=>"Vendredi", "Saturday"=>"Samedi", "Sunday"=>"Dimanche"}

  def self.jourj(time = Time.now)
    jour = JOURS[time.strftime('%A')]
    "Nous sommes le #{jour} " + time.strftime("%d/%m/%Y et il est %H:%M.")
  end
end 

puts JourFrancais.jourj
# "Nous sommes le Dimanche 17/03/2019 et il est 21:14."
puts JourFrancais.jourj(Time.local(2017, 3, 1, 12, 35))
# "Nous sommes le Mercredi 01/03/2017 et il est 12:35."

Нет необходимости в цикле, метод теперь возвращает строку, а не просто отображает ее, и вы можете указать время.

с рельсами i18n

В Rails вы можете загрузить fr.yml в config/locales/ и добавить config.i18n.default_locale = :fr к вашему config/application.rb.

Вам больше не нужна ваша библиотека!

I18n.l Time.now, format: :long
# => "dimanche 17 mars 2019 21h23"
1 голос
/ 17 марта 2019

Вы можете добавить класс в каталог lib вашего приложения.

Затем в application.rb включить этот каталог

config.autoload_paths << "#{Rails.root}/lib"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...