将数据保存到会话-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

将数据保存到会话

2019-04-09 17:29:41 1189 1

我试图将文本框的输入保存到会话(或cookie)而不是数据库,他们没有签署任何东西。

我希望他们能够输入他们的邮政编码,并将其作为变量推送到地图。我不需要通过这一个网页保存该信息。

我试图让form_for保存到会话,但它一直试图将其保存到数据库。

这是我的代码。

<%= simple_form_for @session_location do |f| %>
<%= f.input :location %>
<%= f.button :submit %>
<% end %>

取消 提交回答
全部回答(1)
  • 小六码奴
    2019-07-17 23:33:02

    form_for引用模型,是一种帮助方法,旨在简化数据库中的对象创建或更新。这似乎不是你想要的,因此你可能根本不需要使用它。你仍然可以,但没有太多需要它

    可能,您想要做的是拦截提交并将请求发送到您通过ajax定义的自定义路由,该路由将设置会话变量。

    如果您没有共享任何代码,很难为您提供答案,但它可能看起来像这样:

    class MapController < ApplicationController
    def index

    @session_location = session[:location]

    end

    def set_location

    respond_to do |format|
      f.json do
        session[:location] = location_params[:location]
        redirect_to :index
      end
    end

    end

    private

    def location_params

    params.permit(:location)

    end
    end
    请记住在路由文件中添加#set_location端点。

    然后,在您的视图中,为提交按钮分配ID并添加一些javascript。它可能看起来像这样:

    $("#yourSubmitButton").click(function(e){
    e.preventDefault();

    $.ajax({

    type: "GET",
    dataType: "json",
    url: "/locations",
    success: function(data){}

    });
    });
    这主要是伪代码,因为我不知道你的代码实际上是什么样的,但这是一种做你想要的方法的一般想法。这可能不是做这种事情最优雅的方式。

    您可能需要考虑使用cookie而不是会话变量,有一些Rails宝石可以轻松地使用cookie,例如js_cookie_rails。这样你就可以避免需要ajax和/或重新加载页面。从本质上讲,你仍然可以拦截提交动作但不是使用ajax,而只是Cookie.set[:location]在你的javascript中做一个简单的操作,然后你可以将你的Map javascript用于使用/显示航点。使用这种方法,你不需要任何东西,真的,在你的Rails控制器中,你不需要新的路由,所有你需要做的就是一些JS / CSS。

    但是,同样,由于我不知道您使用的是哪种工具用于地图或代码是什么样的,因此这种方法更难以提供示例/解决方案。

    0 0
相关问答

1

回答

历史命令history数据会一直保存吗?

2022-04-01 19:10:05 219浏览量 回答数 1

1

回答

hive 保存元数据的方式有三种:

2020-02-14 19:35:34 642浏览量 回答数 1

1

回答

关于数据库的疑问

2020-01-31 14:06:40 714浏览量 回答数 1

1

回答

Hive有哪些方式保存元数据?

2020-01-09 19:08:52 222浏览量 回答数 1

1

回答

数据疑问

2016-10-19 10:28:23 3790浏览量 回答数 1

1

回答

数据疑问

2016-09-29 16:42:23 4163浏览量 回答数 1

2

回答

第二题数据询问

2016-07-08 14:00:38 2730浏览量 回答数 2

2

回答

关于浏览器刷新保存数据的问题

2016-06-17 11:56:59 1813浏览量 回答数 2

2

回答

第一题数据

2016-06-12 11:51:32 4175浏览量 回答数 2

3

回答

备案服务号没有数据

2015-08-16 14:25:01 3347浏览量 回答数 3
+关注
8
文章
487
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载