#ruby-on-rails #arrays
#ruby-on-rails #массивы
Вопрос:
Я пытаюсь получить доступ к photo_reference внутри GooglePlaces::Spot. Это выглядит следующим образом
@address_components=nil,
@formatted_address="78 Commercial St, Edinburgh EH6 6LX, United Kingdom",
@id="c1b1a2a52d3d945b085f6bda7ab4a439a592428c",
@lat=55.97703809999999,
@lng=-3.172689199999999,
@name="The Kitchin",
@photos=
[#<GooglePlaces::Photo:0x00560bdba7aa70
@api_key="AIzaSyADZdRRUvCvt0ARmLVrlFlXaB8f4l1ItJE",
@height=371,
@html_attributions=["<a href="https://maps.google.com/maps/contrib/101066273666274573257/photos">The Kitchin</a>"],
@photo_reference=
"CoQBcwAAAE0yucuHEWBiQfVjtGT7CgDAK--L6XU9LHxiqip8mhzc0yzErxGAN17AsucENKAHWpo6dx8ruj5c7SnXd6B0qlJCClaVOF1yNRVWKKxUOD5ZcCY-IifpNGSDvmew4ZaWAa3-GA0XjxcKkoA6CThq-aVjCltbmE4t75l9daQZeUxkEhApm-vcdmqKMXIx3UcFNZkHGhRWqyXIQkIVs9unWyBGHZtGpTqS8A",
@width=371>],
@place_id="ChIJLy3eIwS4h0gRe4oubEitnNQ",
@postal_code=nil
Я получаю доступ к @photos, написав u.photos, но я не знаю, как вернуть @photo_reference внутри u.photos. Есть идеи? Спасибо!
Ответ №1:
Вы должны использовать photo_reference
:
u.photos.first.photo_reference
Чтобы получить список всех photo_references из u.photo
массива, с которым вы бы пошли:
u.photos.inject([]) { |arr, photo| arr << photo.photo_reference }
Дополнительную информацию о доступных методах см. В документах.
Комментарии:
1. Я получаю сообщение об ошибке «NoMethodError: неопределенный метод `photo_reference’ для #<Array:0x00560bdba7aa98>»
2. @KristiyanTsvetanov использовать
u.photo.first.photo_reference
3. Да … это сработало. Я отмечу ваш ответ как принятый.
4. @KristiyanTsvetanov рад помочь. Совет: всегда сначала переходите к документам 😉