J'essaye de créer un formulaire qui permettra à un utilisateur de modifier un appel d'API pour la date de recherche. L'idée est de permettre à une personne de rechercher des astéroïdes proches de la Terre dans une fenêtre temporelle donnée en appelant l'une des API de la NASA. Pas vraiment sûr de savoir par où commencer.Formulaire Rails pour modifier l'appel API basé sur la date
Voici l'appel dans mon modèle. Vous pouvez voir start_date et date_fin, `que je veux éditer en fonction des informations utilisateur
class Astroid < ApplicationRecord
def self.get_api_info
astroid = "https://api.nasa.gov/neo/rest/v1/feed?start_date=2017-03-15&end_date=2017-03-15&api_key=*****"
request_to_astroid = Net::HTTP.get(URI(astroid))
JSON.parse request_to_astroid
end
fin
Voici mon contrôleur très simple
def index
@astroid_info = AstroidApi.get_api_info
fin
Et la vue Je souhaite afficher après avoir sélectionné la sélection de date d'un utilisateur
<%= @astroid_info['near_earth_objects']["2017-03-15"][1]["close_approach_data"][0]["close_approach_date"]%> an astroid named <%= @astroid_info ['near_earth_objects']["2017-03-15"][1]["name"] %> missed us by: <%= @astroid_info ['near_earth_objects']["2017-03-15"][0]["close_approach_data"][0]["miss_distance"]["miles"] %>
Voici le lien pour voir comment les données sont donné: https://api.nasa.gov/neo/rest/v1/feed?start_date=2017-03-15&end_date=2017-03-15&api_key=DEMO_KEY
Ma première pensée est de remplacer le start_date et date_fin avec des variables peuplées de l'entrée utilisateur. Je ne suis pas sûr que ce soit la meilleure façon d'y parvenir car je ne suis pas sûr de savoir comment je pourrais modifier le modèle après avoir obtenu cette information –