У меня модельрельс 4 координат не сохраняется
class Building
include Mongoid::Document
include Geocoder::Model::Mongoid
field :address, :type => String, :default => ""
field :location, :type => Array, spacial: {lat: :latitude, lng: :longitude, return_array: true }
## Building index
index({location: "2d"})
def latitude
location[1]
end
def longitude
location[0]
end
def latitude=(lat)
location[1] = lat
end
def longitude=(lng)
location[0] = lng
end
end
эту форму в представлении
= f.text_field :latitude
= f.text_field :longitude
и это контроллер
...
def create
@building = Building.new(building_params)
respond_to do |format|
if @building.save
format.html { redirect_to @building, notice: 'Building was successfully created.' }
format.json { render action: 'show', status: :created, location: @building }
else
format.html { render action: 'new' }
format.json { render json: @building.errors, status: :unprocessable_entity }
end
end
end
private
def building_params
params.require(:building).permit(:address, :latitude, :longitude)
end
...
Широта и долгота заполняются в форме, но когда я изменяю значение и сохраняю его, он не работает, даже другое поле, подобное адресу, изменяется в базе данных. Но это безотказно работает в консоли
> b = Building.first
> b.latitude = -7.27094221115
> b.save
=> true
что-то вроде этого? https://gist.github.com/spondb/8953622 – spondbob
Мне нужен вводный текст для ввода lat и lng вручную – spondbob