让 Rails 接受欧洲日期格式 (dd/mm/yyyy)

2023-12-04

我希望我的 Rails 应用程序接受格式为 dd/mm/yyyy 的日期字段的日期。

在我的模型中,我尝试将日期转换为美国标准,我认为 Rails 将调用它的 Date.parse 方法是期望的:

  before_validation :check_due_at_format

  def check_due_at_format
    self.due_at = Date.strptime(self.due_at,"%d/%m/%Y").to_time
  end

但是,这会返回:

TypeError in OrdersController#update
can't dup NilClass

如果知道的话,项目表单字段是嵌套在订单中的,并且订单设置为:

  accepts_nested_attributes_for :items, :reject_if => lambda { |a| a[:quantity].blank? && a[:due_at].blank? }, :allow_destroy => :true

因此,这些项目正在 @order.save/@order.update_attributes 上进行验证和保存/更新

谢谢你!


这可能只是一个案例due_at值为零。在您的情况下,它是一个空字符串,但由于以下原因而被忽略:reject_if选项开启accepts_nested_attributes_for,所以它仍然为零。

>> Date.strptime(nil, "%d/%m/%Y")
TypeError: can't dup NilClass

然后用一些条件来处理它。

self.due_at = Date.strptime(self.due_at,"%d/%m/%Y").to_time unless self.due_at.nil?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

让 Rails 接受欧洲日期格式 (dd/mm/yyyy) 的相关文章

  • ruby:类实例变量与实例变量

    我的想法是为来自不同国家的人们创建一个社区维基java因为读了很多解释 我无法理解任何东西 直到我真正尝试了一些东西 拼图的各个部分开始找到它们的位置 但我首先需要确保我做对了 来自这样的背景 我很困惑地发现 variable可能意味着两个
  • 安装 mysql2 时出错:无法构建 gem 本机扩展

    我在尝试安装时遇到一些问题mysql2Rails 的宝石 当我尝试通过运行安装它时bundle install or gem install mysql2它给了我以下错误 安装 mysql2 时出错 错误 无法构建 gem 本机扩展 我该如
  • Bundler 找不到 gem“rack”的兼容版本:

    我是 Ruby 新手 但实际上如果我不想安装 Redmine 我就不需要它 我正在按照以下说明进行操作http www redmine org projects redmine wiki HowTo install Redmine on C
  • 两列 Jekyll 布局,用标签分隔?

    我目前正在 Jekyll 博客上工作 我想将我的 Markdown 文件采用以下格式 div class row div class col md 6 div div class col md 6 div div 我希望我的代码块在一列中
  • 如何在 Rails 应用程序中选择性地跟踪方法及其文件访问?

    对于 Rails 应用程序 我想重载或修改 Kernel load 以便它打印出完整路径 例如puts gt File expand path File dirname FILE File basename FILE 对于加载的每个 Rai
  • Rails 路由:向 root 添加(浅层)关注

    在我的routes rb中 我定义了一个问题 如下所示 concern namespaceable do resources comments do resources replies 现在 我可以将此问题添加到任何资源中 resource
  • 捆绑安装无法安装 libxml-ruby

    我是 Ruby 世界的新手 我需要克隆一个现有项目 说明是 source env development bundle install 但它失败了 Using libv8 3 16 14 15 Fetching libxml ruby 2
  • ruby require 问题(与 $LOAD_PATH 有关)

    我正在尝试使用我刚刚安装的 gem 通过sudo gem install excelsior 像这样 需要 红宝石 要求 精益求精 这在 irb 中工作得很好 但是当我将完全相同的代码粘贴到 rb 文件中并尝试使用 ruby 运行它时 我得
  • 如何向 ActiveRecord 集合添加方法?

    我想为特定模型的所有集合添加一个方法 假设我想添加方法my complicated averaging method到 WeatherData 集合 WeatherData all limit 3 my complicated averag
  • 获取类别和子类别的所有产品(rails、awesome_nested_set)

    正在开发一个电子商务应用程序 我试图解决以下问题 我通过 Awesome nested set 插件实现了我的类别 如果我通过选择一个类别列出我的文章 一切正常 但对于某些链接 我想显示一个类别的所有产品及其子类别的产品 这是仅适用于一种类
  • 如何在 jQuery.ui.autocomplete 中的自动完成弹出窗口下方添加所有搜索的链接?

    我有使用 jQuery UI 自动完成插件的搜索建议自动完成功能 http jqueryui com autocomplete http jqueryui com autocomplete 但是如何添加结果弹出项目的底部 其行为类似于 Qu
  • 国家/地区的下拉菜单

    您好 我想为国家和州实现下拉菜单 州下拉列表应根据所选国家 地区更改其值 有没有任何插件或 gem 可以在 Rails 中执行此操作 尝试卡门插件 http autonomousmachine com posts 2009 4 1 carm
  • 为什么 en_GB 语言环境认为 1 月 1 日是一年中的第 52 周?

    事实证明 一年中的一周使用ww作为 2011 年 1 月 1 日的 Java 日期格式字符串 当语言环境为en GB 这是证明 使用 scala REPL 尽管我可以使用 Java 程序来完成此操作 首先获取我的语言环境 scala gt
  • 解析字符串

    我有一个格式为 ABCDEFG 12 34 56 78 90 11 的字符串 我想将这两个用逗号分隔的值分隔成两个不同的字符串 我如何使用 c 语言在 gcc 中做到这一点 一种可能性是这样的 char first 20 second 20
  • 如何在Rails 中使用highlight.js?

    我正在尝试在我的 Rails 应用程序中使用语法突出显示和highlight js height js 的说明如下 https github com isagalaev highlight js https github com isaga
  • 为什么在线解析器似乎停在正则表达式处?

    我一直想知道为什么似乎没有任何解析器 比如说 BNF http en wikipedia org wiki Backus E2 80 93Naur Form 其行为类似于各种库中的正则表达式 当然 还有类似的事情ANTLR http www
  • 安装适用于 Windows 7 的 Ruby on Rails(最新)

    我是一名设计师 而不是一名编码员 并且在首次安装时遇到了问题 我下载了 Rails 1 8 6 和 Instant Rails 我打开控制台并尝试更新 gem 那里没有任何作用 我想我会删除所有内容并重新开始 因为我确信我现在破坏了某些东西
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • Rails apns 用于向 Apple ipad 推送通知 - 使用哪个 gem?

    我希望从 Rails 3 0 3 应用程序向苹果推送通知 我发现了各种 apns ish 宝石 包括 apns on rails 其中一些似乎有点旧 1 或 2 年 并且非常不清楚 2012 年使用的 当前 是什么 根据我的标准 您能推荐使
  • 为什么这段 Ruby 代码无法写入日志文件?

    一旦脚本被守护 记录器就无法再写入文件 那么我应该如何以及何时初始化日志呢 require rubygems require daemons require logging def create new logger logger Logg

随机推荐

  • 如何在 Rails 中设置默认值?

    我正在尝试找到为 Rails 中的对象设置默认值的最佳方法 我能想到的最好的方法是在new控制器中的方法 如果这是可以接受的或者是否有更好的方法 是否有人有任何意见 正确 在 Ruby 中是一个危险的词 做任何事情通常有不止一种方法 如果你
  • 如何使用合并分支对 TFS 拉取请求中的 Jenkins 作业进行排队

    我们在 TFS 2017 3 中有一个 Git 存储库 我们的构建在 Jenkins 上运行 我们希望在拉取请求中实现构建验证 因此我们创建了一个构建定义 该定义对 Jenkins 作业进行排队 并在 作业参数 中输入BRANCH Syst
  • 为数组中的每两个元素创建对

    如何简洁地编写一个函数 以便它使用数组中的每对元素创建一个新的对象数组 假设元素数量为偶数 输入示例 input 1 42 55 20 3 21 Output output x 1 y 42 x 55 y 20 x 3 y 21 Edit
  • 单页根据当前位置隐藏/显示部分

    我正在开发单页网站 每个页面都组织成部分标签 每个部分都放置在彼此的顶部 我需要一种使用 jquery 的方法 根据当前位置 DOM 将隐藏其余部分 例如 按下 关于 链接将带您进入 关于 部分 我当前的 DOM 结构
  • 从标记模板文字函数参数推断类型

    我想从标记模板文字函数中的通用参数获取类型 但打字稿无法从参数 模板 中读取 它只是将类型读取为 TemplateStringsArray const tag
  • 函数中的 dplyr 管道

    我试图将 dplyr 管道放入函数中 但在多次阅读小插图以及整洁的评估之后 https tidyeval tidyverse org dplyr html 我仍然无法让它工作 Sample data dat lt read table te
  • SQL Server 无法对包含聚合或子查询的表达式执行聚合函数

    我的存储过程有问题 我收到错误 无法对包含以下内容的表达式执行聚合函数 聚合或子查询 这是我的存储过程中我认为发生错误的部分 SELECT column 1 column 2 SUM CASE WHEN column 2 NOT IN SE
  • 在 Erlang 中显示连接特定的 cookie

    当在节点上设置 cookie 时erlang set cookie 2可以为不同的节点设置不同的cookie 有什么方法可以显示哪个节点设置了哪个cookie Calling erlang get cookie 1不显示此信息 仅显示 默认
  • 将 JPanel 添加到 JScrollPane

    我正在尝试显示多个较小的JPanel on a JScrollPane 为了实现这一目标 我目前将它们添加到另一个JPanel并将此面板设置为scrollPane的ViewportView 有没有办法将面板直接添加到滚动窗格 不起作用的是
  • 如何在 Windows 中将套接字设置为阻塞模式?

    我正在做一些相当简单的跨平台 TCP 套接字编程 不幸的是 我发现在 Windows 上编译时 我的套接字默认是非阻塞的 而在 OS X 上它们默认是阻塞的 如何在 Windows 上强制套接字进入阻塞模式 它们通常默认为非阻塞模式还是有什
  • php数组唯一类型检查

    我在用array unique删除数组中的重复值 但是 问题是array unique检查重复项时不考虑数据类型 例如 a 1 true null false u array unique a var dump u Outputs arra
  • 按进程获取电池使用情况

    我有一个代码 在 C 中 用于管理在我的计算机中启动的所有进程 我用性能计数器用于查找在一个特定进程中链接的所有值的类 例如 此代码检索了 Firefox 的处理器时间使用情况 PerformanceCounter processorTim
  • 如何使用 BeautifulSoup 删除嵌套标签中的内容?

    如何删除嵌套标签中的内容BeautifulSoup 这些帖子显示了相反的情况来检索嵌套标签中的内容 如何使用 BeautifulSoup 获取嵌套标签的内容 and BeautifulSoup 如何从包含一些嵌套 的 列表中提取所有 我努力
  • 合并字典而不覆盖值

    这似乎是一个简单的任务 我正在尝试合并两个字典而不覆盖值但附加 a 1 1 1 2 2 2 3 3 3 4 4 b 3 5 5 4 6 6 元组数量 a 4 元组数量 b 2 这就是为什么我单独列出这些选项 因为它们会覆盖 all dict
  • 当隔离级别为 READ_UNCOMMITTED 时,无法看到正在运行的事务插入的行

    我有将行插入表的应用程序A同时 每个应用程序以批处理模式插入行 使用 JDBC 准备好的语句 每批使用一个事务 以避免在每次插入后重建索引 INSERT 每个批次中存在的行是完全独立的 事务仅用于优化 每个插入的行都会自动设置其主键 AUT
  • 以图像为背景的热图

    我正在尝试使用 R 制作热图 我正在尝试使用 ggplot2 我的实际数据框要大得多 但在这里我只包含一小部分 x lt c 502 9 512 1 716 6 759 7 776 1 776 5 736 1 271 3 304 7 279
  • 在NDK中使用资源文件

    我正在创建一个 NDK 库 它需要包含和访问二进制数据文件 dat 扩展名 我无法让已编译的库查看此文件 为了让事情变得更加困难 我在库包中执行此操作 我认为如果在我的 Android mk 文件期间 将此 dat 文件复制到我的应用程序的
  • 如何在ASP.NET中获取提示值?

    我想要做的是 当用户在提示框中输入文本并按下 确定 按钮时 提示框会将值发送回string prmt 如果他们取消了提示 则不会执行任何操作 Codes string prmt if ren gt 1 ClientScript Regist
  • 静态方法的目的是什么?我如何知道何时使用? [复制]

    这个问题在这里已经有答案了 我使用以下代码在 python 中遇到了未绑定方法错误 import random class Sample object def drawSample samplesize List sample random
  • 让 Rails 接受欧洲日期格式 (dd/mm/yyyy)

    我希望我的 Rails 应用程序接受格式为 dd mm yyyy 的日期字段的日期 在我的模型中 我尝试将日期转换为美国标准 我认为 Rails 将调用它的 Date parse 方法是期望的 before validation check