Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Rails 3,将本地IP地址插入记录字段_Ruby On Rails 3_Controller_Ip - Fatal编程技术网

Ruby on rails 3 Rails 3,将本地IP地址插入记录字段

Ruby on rails 3 Rails 3,将本地IP地址插入记录字段,ruby-on-rails-3,controller,ip,Ruby On Rails 3,Controller,Ip,我有一个Rails 3应用程序,我想在我的一个模型中添加一个字段,该字段将被称为localip 如何将当前本地IP添加到该字段 控制器中的标准创建方法如下所示: # POST /prescriptions # POST /prescriptions.json def create @prescription = Prescription.new(params[:prescription]) respond_to do |format| if @prescri

我有一个Rails 3应用程序,我想在我的一个模型中添加一个字段,该字段将被称为localip

如何将当前本地IP添加到该字段

控制器中的标准创建方法如下所示:

# POST /prescriptions
  # POST /prescriptions.json
  def create
    @prescription = Prescription.new(params[:prescription])

    respond_to do |format|
      if @prescription.save
        format.html { redirect_to @prescription, notice: 'Prescription was successfully created.' }
        format.json { render json: @prescription, status: :created, location: @prescription }
      else
        format.html { render action: "new" }
        format.json { render json: @prescription.errors, status: :unprocessable_entity }
      end
    end
  end
是否有使用create方法插入它的方法?

我假设“当前本地IP”是指客户端的IP。 如果是这样的话,那么您可以在控制器操作中从env hash访问它-

current_local_ip = request.env['REMOTE_ADDR']


如果按当前本地ip表示服务器的ip,只需查找HTTP_主机密钥的值。

如何将该值插入模型中所需的字段?假设您的字段是localip,并且它属于处方模型,则只需执行
@prescription.localip=request.env['REMOTE_ADDR']
在您执行
@处方之前。保存
@nonocut这将在它各自的控制器中,对吗?
current_local_ip = request.env['REMOTE_HOST']