我目前正在将 Geokit 实施到我的项目中。我想获取用户输入到创建网站的信息,对地址进行地理编码,并使用创建的新纬度和经度创建条目。但是,用户不会输入 lat 或 long,因为我们的 geokit 会为他们输入。总的来说,当用户按下“创建”按钮时,我们的控制器应该获取所有信息(假设它已经过验证)对给定地址进行地理编码,并使用生成的纬度和经度来创建新条目。我有一些大致的想法,但不确定直接更改控制器是否是正确的方法。我已经包含了我的控制器代码以获得视觉帮助。提前谢谢了!
总体问题 - 您将地址地理编码并自动使用生成的纬度和经度来创建其余数据条目的方法放在哪里?
class PocsController < ApplicationController
# GET /pocs # GET /pocs.json def index @pocs = Poc.all @pocs = Poc.find(:all) @pocs.sort!{ |a,b| a.name.downcase <=> b.name.downcase }
respond_to do |format|
format.html # index.html.erb
format.json { render json: @pocs }
end
结尾
# GET /pocs/1 # GET /pocs/1.json def show @poc = Poc.find(params[:id]) @pocs = Poc.all
respond_to do |format|
format.html # show.html.erb
format.json { render json: @poc }
end
结尾
# GET /pocs/new # GET /pocs/new.json def new @poc = Poc.new
respond_to do |format|
format.html # new.html.erb
format.json { render json: @poc }
end
结尾
# GET /pocs/1/edit def edit @poc = Poc.find(params[:id]) end
# POST /pocs # POST /pocs.json def create @poc = Poc.new(params[:poc])
respond_to do |format|
if @poc.save
format.html { redirect_to @poc, notice: 'Poc was successfully created.' }
format.json { render json: @poc, status: :created, location: @poc }
else
format.html { render action: "new" }
format.json { render json: @poc.errors, status: :unprocessable_entity }
end
end
结尾
# PUT /pocs/1 # PUT /pocs/1.json def update @poc = Poc.find(params[:id])
respond_to do |format|
if @poc.update_attributes(params[:poc])
format.html { redirect_to @poc, notice: 'Poc was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @poc.errors, status: :unprocessable_entity }
end
end
结尾
# 删除 /pocs/1 # 删除 /pocs/1.json def destroy @poc = Poc.find(params[:id]) @poc.destroy
respond_to do |format|
format.html { redirect_to pocs_url }
format.json { head :no_content }
end
结束结束