nasıl raylar 5 ile kurulum coğrafi kodlayıcısında için herhangi bir fikir?

oy
-1

Ben adresinden enlem ve boylam almaya çalışıyorum ama raylar db çalıştırdığınızda: Tohum enlem ve boylam boş kalmak ve Geri kalan alanlar seribaşı olacak

İşte benim modelidir

    attr_accessor :lat, :lng
    geocoded_by :address, :latitude  => :lat, :longitude => :lng
    after_save :geocode, if: ->(building){ building.address.present? }

ve ben GemFile taş 'geocoder' var

    My Rails version 5.0.6
    and ruby version 2.4.1

Not: Ben bu var sadece 'geocoder' taş kullanmak gerekir, teşekkür peşin

Oluştur 06/12/2017 saat 07:05
kaynak kullanıcı
Diğer dillerde...                            


1 cevaplar

oy
2

after_save kayıt veritabanına kaydedilir ve bu nedenle coğrafi kodlama bilgisi kendisi veritabanına kaydedilmez sonra coğrafi kodlama yapılır anlamına gelir.

Ayrıca attr_accessor :lat, :lngiçin raylar tarafından sağlanan alıcı ve ayarlayıcı yöntemini geçersiz kılar latve lngveritabanı sütunları.

Sadece kodunuzu değiştirin:

# remove this line: attr_accessor :lat, :lng
geocoded_by :address, :latitude  => :lat, :longitude => :lng
before_save :geocode, if: ->(building){ building.address.present? }
Cevap 06/12/2017 saat 07:33
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more