ruby - 使用 ActiveRecord 和带有撇号的列
问题描述
我有一个无法修改的数据库,它包含的列名......让我们说愚蠢。大多数都很好,但其中一些有一个撇号。一种叫做“配偶生日”。
我可以establish_connection
使用Model.count
. 但是当我尝试Model.find
时,它失败并出现以下错误:
/var/lib/gems/2.3.0/gems/activemodel-5.2.2/lib/active_model/attribute_methods.rb:380:in `module_eval': /var/lib/gems/2.3.0/gems/activemodel-5.2.2/lib/active_model/attribute_methods.rb:381: syntax error, unexpected tIDENTIFIER, expecting ')' (SyntaxError)
... define_method(:'Spouse's Birthday_before_type_cast') ...
... ^
/var/lib/gems/2.3.0/gems/activemodel-5.2.2/lib/active_model/attribute_methods.rb:382: syntax error, unexpected tIDENTIFIER, expecting end-of-input
attribute_before_type_cast("Spouse's Birthday", *args)
错误消息非常简单;列名中的撇号正在破坏一切。我需要一种方法来逃避它,或者提供establish_connection
可以将现有列名映射到我更喜欢使用的名称的东西。
解决方案
推荐阅读
- javascript - 在 react-native 中使用 javascript 更新 firebase 中随机节点的值
- python - 为什么我第一次提交时得到 BrokenProcessPool,Python 3.8.3,Windows 10?
- android - 无法在反应原生 android 应用程序中绑定隔离服务
- android - 下载管理器无法下载 APK
- r - R图像轴标签和刻度
- powershell - 无法在 PowerShell 事件描述文本框中设置描述
- javascript - TS7053:在“BaseReducer”类型上找不到具有“字符串”类型参数的索引签名
' - algorithm - ** Neo4J 上的 **Neo.ClientError.Procedure.ProcedureNotFound** 错误
- php - PHP 函数中的 PHP 和 HTML 代码 - Wordpress 2GIS Shortcode
- python - 如何从单词文件的几行中拆分所有单词?(Python)