0

私のアプリケーションでは、ヘッダーから動的にテキストフィールド値を設定したいと思います。これがコードです

androidプロジェクトでは、ヘッダーの緯度と経度を設定し、これをRailsビューで取得しようとしています。

public static String getAddress(final String dir_atoken, final String data_atoken, final float lat, final float lng) throws Exception {

        final HttpGet get = new HttpGet("http://192.168.1.4:3000/address/lookup");

        get.setHeader(LAT,String.valueOf(lat));
        get.setHeader(LNG,String.valueOf(lng));


        return getResponse(get, 200, true);
    }

これは私のlookup_addressコントローラーです

def lookup_address
    @lat = request.headers['Lat']
    @lng = request.headers['Lng']
  end

これは私のlookup_address.html.erbです

<% form_for @location do |f| %>
    <%=  f.error_messages %>

    <p>
        <%= f.label :latitude %><br />
        <%= f.text_field :latitude, :value => request.headers['Lat'] %>
    </p>
    <p>
        <%= f.label :longitude %><br />
        <%= f.text_field :longitude, :value => request.headers['Lng'] %>
    </p>
    <p>
        <%= f.submit 'Create' %>
    </p>
<% end %>

設定:value =>request.headers['Lat']すると常にnullが返されます。

null値を取得しないためにここで何をすべきですか?

4

1 に答える 1

1

どこに@location建てられますか?コントローラーに設定する方が正しいと思います@location.latitude@location.longitude

def lookup_address
  @location = Location.new #Not sure how you build the @location
  @location.latitude = request.headers['Lat']
  @location.longitude = request.headers['Lng']
end

lookup_address.html.erb

<% form_for @location do |f| %>
    <%=  f.error_messages %>

    <p>
        <%= f.label :latitude %><br />
        <%= f.text_field :latitude %>
    </p>
    <p>
        <%= f.label :longitude %><br />
        <%= f.text_field :longitude %>
    </p>
    <p>
        <%= f.submit 'Create' %>
    </p>
<% end %>
于 2012-08-03T07:55:10.547 に答える