Task Description:
In this exercise, you are required to create a simple Ruby on Rails API endpoint. This task is designed to assess your knowledge of Rails routing, controllers, and basic data handling.
Duration:
20 minutes
Objective:
Your task is to convert a number into a string that contains raindrop sounds corresponding to certain potential factors. A factor is a number that evenly divides into another number, leaving no remainder. The simplest way to test if a number is a factor of another is to use the modulo operation.
The rules of raindrops are that if a given number:
{ | |
"error""=>false", | |
"executionTimeMS"=>127, | |
"copyright""=>""Copyright 2023 Autodata, Inc. dba ChromeData. All rights reserved", | |
"result""=>"{ | |
"vinSubmitted""=>""5LMJJ3JT3GEL00715", | |
"vinProcessed""=>""5LMJJ3JT3GEL00715", | |
"validVin""=>true", | |
"source""=>""E", | |
"year""=>""2016", |
{ | |
"error""=>false", | |
"executionTimeMS"=>277, | |
"copyright""=>""Copyright 2023 Autodata, Inc. dba ChromeData. All rights reserved", | |
"result""=>"{ | |
"vinSubmitted""=>""WP0CB29888U730223", | |
"vinProcessed""=>""WP0CB29888U730223", | |
"validVin""=>true", | |
"source""=>""V", | |
"year""=>""2008", |
{ | |
"error""=>false", | |
"executionTimeMS"=>83, | |
"copyright""=>""Copyright 2023 Autodata, Inc. dba ChromeData. All rights reserved", | |
"result""=>"{ | |
"vinSubmitted""=>""5YFEPMAE4NP280618", | |
"vinProcessed""=>""5YFEPMAE4NP280618", | |
"validVin""=>true", | |
"source""=>""E", | |
"year""=>""2022", |
{ | |
"error""=>false", | |
"executionTimeMS"=>111, | |
"copyright""=>""Copyright 2023 Autodata, Inc. dba ChromeData. All rights reserved", | |
"result""=>"{ | |
"vinSubmitted""=>""5YJSA1H14EFP30592", | |
"vinProcessed""=>""5YJSA1H14EFP30592", | |
"validVin""=>true", | |
"source""=>""E", | |
"year""=>""2014", |
{ | |
"error""=>false", | |
"executionTimeMS"=>97, | |
"copyright""=>""Copyright 2023 Autodata, Inc. dba ChromeData. All rights reserved", | |
"result""=>"{ | |
"vinSubmitted""=>""4T1C11AK1MU600973", | |
"vinProcessed""=>""4T1C11AK1MU600973", | |
"validVin""=>true", | |
"source""=>""C", | |
"year""=>""2021", |
require 'open-uri' | |
module FlightAPI | |
def self.flights_populate(city) | |
date = (Date.today + 30).strftime("%Y/%m/%d") | |
json = JSON.parse(open("https://api.flightstats.com/flex/connections/rest/v1/json/direct/to/#{city.iata_code}/arriving/#{date}?appId=app_id&appKey=api_key").read) | |
airports = json["appendix"]["airports"] | |
carriers = json["appendix"]["airlines"] | |
flights = json["flights"] | |
flights.each do |f| |
def login_form_links | |
links = [sign_in, devise_registration, password_recovery, confirmation_instructions, unlock_email] | |
if devise_mapping.omniauthable? | |
resource_class.omniauth_providers.each do |provider| | |
links << link_to(t('.sign_in_with_provider', provider: OmniAuth::Utils.camelize(provider)), omniauth_authorize_path(resource_name, provider)) | |
end | |
end | |
links.join(' ') | |
end |
Base references sites (with examples):