today_ai_weather/app/models/city.rb

27 lines
745 B
Ruby
Raw Normal View History

class City < ApplicationRecord
extend FriendlyId
friendly_id :name, use: :slugged
has_many :weather_arts, dependent: :destroy
validates :name, presence: true
validates :latitude, presence: true
validates :longitude, presence: true
def should_generate_new_friendly_id?
name_changed? || super
end
def self.ransackable_associations(auth_object = nil)
[ "weather_arts" ]
end
def self.ransackable_attributes(auth_object = nil)
[ "active", "country", "created_at", "id", "id_value", "last_image_generation", "last_weather_fetch", "latitude", "longitude", "name", "priority", "region", "slug", "timezone", "updated_at" ]
end
def latest_weather_art
weather_arts.order(weather_date: :desc).first
end
end