ruby-on-rails - Rails 5项目没有activerecord导致模型生成错误
问题描述
我在使用没有 ActiveRecord 的 Rails 5.2 的项目中遇到问题。
我已经运行了命令rails new project --skip-active-record
并且没问题,但是当我运行命令来生成模型时,我得到了这个错误:
.rvm/gems/ruby-2.5.1/gems/bundler-1.16.1/lib/bundler/rubygems_integration.rb:404:in `block (2 levels) in replace_gem':加载 'sqlite3' Active Record 适配器时出错。缺少它所依赖的宝石?sqlite3 不是捆绑包的一部分。将其添加到您的 Gemfile。(宝石::加载错误)
如果我禁用它并且我在互联网上搜索并且没有找到任何人在谈论它,我不明白为什么它会询问活动记录中的 sqlite 3。
怎么了?
谢谢
解决方案
命令
rails g model MODEL
将生成模型、迁移和固定装置。这与ORM有关。所以 rails 会查看数据库配置。在那里你会提到 ORM 客户端
adapter: sqlite3
您需要为此安装sqlite3 gem。添加
gem 'sqlite3'
到您的Gemfile
如果您想单独添加模型,请在app/models
文件夹内创建文件。但是这样做有什么意义呢?Rails 将根据模型的类名查找表名并抛出错误
推荐阅读
- laravel - 使用 Laravel 分页和 Bootstrap-vue 分页
- css - 如何在tailwind.css中使用:not()?
- dataframe - 如何在使用 Spark Java 将 Spark Dataframe 写入 Kafka Producer 时控制记录数
- java - 模块化 = true 和 GenericApplicationContextFactory 的 Spring Batch 很麻烦
- javascript - 无法从输入类型文件的 onChange 事件中获取绝对文件名
- excel - SUMPRODUCT 与列上的计算标准
- python - MIDI 刻度是固定值还是取决于文件的 BPM?
- python - 格式不同时如何用re返回字符串?
- postgresql - PostgreSQL 在按索引过滤时非常慢
- c - 从字符串数组中删除第一个和最后一个字符