读入文件内容rails

2024-02-20

我有一个表单正在尝试读取 JSON 文件以进行解析/操作/等。我在控制器中读取它时遇到问题。

View:

<%= form_tag({:controller => :admins, :action => :upload_json}, {:multipart => true, :method => :post}) do |f| %>

    <%= file_field_tag 'datafile' %>

<%= submit_tag "Upload" %>

控制器:

def upload_json

  file_data = params[:datafile]

  File.read(file_data) do |file|

     file.each do |line|
       ## does stuff here....
     end
  end

end

我的中也有类似的功能seed.rb当我播种数据时,我无法读取文件 - 只是无法读取上传的文件。

我收到的错误是:can't convert ActionDispatch::Http::UploadedFile into String.

先谢谢您的帮助!


弄清楚了。需要改变:

file_data = params[:datafile]

to

file_data = params[:datafile].tempfile

并决定使用.open要改变的功能:

File.read(file_data) do |file|

to

File.open(file_data, 'r') do |file|  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读入文件内容rails 的相关文章

随机推荐

  • Bootstrap 导航在调整大小时消失

    我有一个 Bootstrap 3 导航栏 当我将浏览器窗口缩放到低分辨率或使用手机访问页面时 我没有菜单 通常 使用 Bootstrap 我有一个折叠的导航 但无处可寻 这是 HTML
  • 如何将命令行参数传递给 unix/linux 系统上正在运行的进程?

    在SunOS上有pargs命令打印传递给正在运行的进程的命令行参数 其他Unix环境下有类似的命令吗 有几种选择 ps fp
  • 系统变量对主管不可见

    我有一个带有主管的 docker 容器 可以启动一些 php 作业 我需要将 env 变量传递给 php 作业 但是不工作 我补充说 在 supervisor environment APP ENV ENV APP ENV s APP DE
  • 数据绑定 TextBlock 在 Silverlight / WP7 中运行

    我在 Windows Phone 7 上使用 Silverlight 我想以粗体显示 TextBlock 中某些文本的第一部分 其余部分以普通字体显示 完整的文本必须换行 我希望粗体部分包含来自 ViewModel 中一个属性的文本 而纯文
  • 如何解决错误:当应用程序未在 UserInteractive 模式下运行时显示模式对话框或表单不是有效操作

    我正在做项目 在我的系统中 当我运行该项目时 它运行良好 但是当我检查时将其上传到我的域后 它会显示如下错误 当应用程序未在 UserInteractive 模式下运行时显示模式对话框或表单不是有效操作 指定 ServiceNotifica
  • 布局之间的淡入淡出效果

    作为对象 我将重现两个布局之间的淡入淡出效果 现在我有这样的情况 LinearLayout l LinearLayout l2 要在它们之间切换我用过 l setVisibility View GONE l2 setVisibility V
  • 上传项目后在 github 上的 django 项目中隐藏密钥

    我在 github 上上传了我的 django 项目 并且我的项目有很多提交 我不想删除我的项目并再次重新上传 将项目上传到 github 并进行大量提交后隐藏密钥的最简单方法是什么 在同一目录中manage py是 创建一个文件 其名称为
  • C++20 从带括号的值列表初始化聚合,不支持内部数组

    采用 C 20p0960 https wg21 link p0960 允许从带括号的值列表初始化聚合 确切的措辞 dcl init 17 6 2 2 https eel is c draft dcl init 17 6 2 2 says 如
  • jQuery 将 DIV 复制到另一个 DIV 中

    需要一些 jquery 帮助将一个 DIV 复制到另一个 DIV 中 并希望这是可能的 我有以下 HTML div class container div class button div div 然后我在页面的另一个位置有另一个 DIV
  • 在 crate 的 API 中发布具体类型而不是“impl Trait”有什么优势?

    在修补箱子时 我自己隐藏了内部迭代器类型 但作者说发布类型是一项功能 最佳实践是为公共 API 中公开的每个迭代器发布显式包装器结构 显然 Rust 标准库对其所有迭代器都执行此操作 为什么要这样做 更具体地说 如果实现兼容的类型std e
  • 如何查找字符串中某个字符出现的数组

    我正在 PHP 中搜索一个函数来返回字符串中字符的位置数组 输入这些参数 hello world i 将返回 4 7 提前致谢 无需循环 str Hello World letter o letterPositions array keys
  • 获取 numpy 中唯一行的位置的更快方法是什么

    我有一个唯一行的列表和另一个更大的数据数组 在示例中称为 test rows 我想知道是否有一种更快的方法来获取数据中每个唯一行的位置 我能想到的最快的方法是 import numpy uniq rows numpy array 0 1 0
  • if 条件 vs &&,是否有任何性能提升

    如果用户是所有者 我有一个条件要检查删除和文章 delete article if user owner 另一种方法是 user owner delete article 选择其中任何一个有什么好处还是它只是一种写作风格 性能不太可能成为该
  • 在 PostgreSQL 中正确处理 TIME AND TIME ZONE

    我们有一个表 其中填充了来自另一个系统的遗留报告的数据 该表的列反映了报告的相同结构 以下是该表的缩写结构 CREATE TABLE IF NOT EXISTS LEGACY TABLE REPORT DATE DATE NOT NULL
  • 如何保护 imap_open 连接的安全

    我使用 imap open 与我的邮件服务器建立连接以检查退回的电子邮件 pop3conn imap open localhost 110 pop3 MAILLOGIN MAILPWD if pop3conn false echo br n
  • 从 Github 安装 Gson

    我刚刚开始学习 Java 我正在开发的一个新项目需要 Gson 我觉得我在网上找到的所有安装说明中缺少了一些东西 它们都引用了我应该能够从 zip 文件中提取的三个 jar 文件 但是当我在 github 上查看 Gson 时 我找不到任何
  • SQL:将具有开始/结束的行扩展为单独的行

    我有这样的记录 start end total 830 1300 5 1400 1430 2 我想扩展到 instance total 830 5 831 5 832 5 1299 5 1300 5 1400 2 1401 2 1429 2
  • 触摸命令在 VSC 终端中不起作用

    我是新手 仍在尝试弄清楚如何配置我的开发环境 我在 Visual Studio Code 中使用 touch 命令时遇到错误 我可以用mkdir可以创建目录 但无法创建 php文件 这是我收到的错误 有任何想法吗 谢谢你 touch 术语
  • C++ 中的结构体和 C# 中的结构体有区别吗?

    C 中的结构体和 C 中的结构体有区别吗 在 C 中 您使用结构体来定义值类型 而不是由classes 在 C 中 结构体与类具有相同的默认可访问性级别public 所以问题应该是 C 中的结构与 C 中的类不同吗 是的 它们是 不能从 C
  • 读入文件内容rails

    我有一个表单正在尝试读取 JSON 文件以进行解析 操作 等 我在控制器中读取它时遇到问题 View 控制器 def upload json file data params datafile File read file data do