Rails Select from JSON Array
Eu tenho um array JSON que foi retornado do Foursquare; vamos chamá-lo@venues
. Quero poder "selecionar" um local por meio de uma caixa suspensa e quero que ele faça parte de um formulário.
Isso significa que eu quero ser capaz de selecionar um local específico pelo nome (ou seja, neste caso, o Hotel Utah Saloon), e salvarid
em um modelo. Para esclarecer, só estarei salvando os locais que seleciono, nem todos eles.
Através da pesquisa, eu me encontrei confuso entreselect
, collection_select
eselect_tag
. Tenha em mente que isso é JSON diretamente de umJSON.parse
método e não é um modelo de banco de dados.
Como faço para criar esta lista suspensa em um formulário?
Para esclarecimento,@venues
parece algo como isto:
[
{
"beenHere":8,
"venue":{
"id":"3fd66200f964a52023f11ee3",
"name":"Hotel Utah Saloon",
"contact":{
"phone":"4155466300",
"formattedPhone":"(415) 546-6300",
"twitter":"hotelutah"
},
"location":{
"address":"500 4th St",
"crossStreet":"Corner of Bryant",
"lat":37.77947007181946,
"lng":-122.39816943501836,
"postalCode":"94107",
"city":"San Francisco",
"state":"CA",
"country":"United States",
"cc":"US"
},
"categories":[
{
"id":"4bf58dd8d48988d1e9931735",
"name":"Rock Club",
"pluralName":"Rock Clubs",
"shortName":"Rock Club",
"icon":"https:\/\/foursquare.com\/img\/categories\/arts_entertainment\/musicvenue_rockclub.png",
"parents":[
"Arts & Entertainment",
"Music Venues"
],
"primary":true
}
],
"verified":true,
"stats":{
"checkinsCount":6654,
"usersCount":3330,
"tipCount":50
},
"likes":{
"count":0,
"groups":[
]
},
"beenHere":{
"count":0
}
}
}
]