has_and_belongs_to_many 连接表的 Rails 迁移

2023-12-29

我该如何做script/generate migration为 a 创建一个连接表has_and_belongs_to_many关系?

该应用程序在 Rails 2.3.2 上运行,但我还安装了 Rails 3.0.3。


Where:

class Teacher < ActiveRecord::Base
  has_and_belongs_to_many :students
end

and

class Student < ActiveRecord::Base
  has_and_belongs_to_many :teachers
end

对于轨道 4:

rails generate migration CreateJoinTableStudentTeacher student teacher

对于轨道 3:

rails generate migration students_teachers student_id:integer teacher_id:integer

对于导轨

script/generate migration students_teachers student_id:integer teacher_id:integer

(注意表名按字母顺序列出了两个连接表)

然后仅对于 Rails 3 及更低版本,您需要编辑生成的迁移,以便不会创建 id 字段:

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

has_and_belongs_to_many 连接表的 Rails 迁移 的相关文章

  • 向 Rails 应用程序中的内置类添加方法

    我想向 Rails 应用程序中的 Array 类添加一个方法 我应该把这个方法放在哪里 编辑得更清楚 显然我把它放在某个文件中 但是我如何告诉 Rails 应用程序在哪里可以找到它 执行此操作的一种方法是在以下位置创建一个文件lib rai
  • 如何将 Devise 的“超时”模块添加到现有的 Devise 安装中? - 轨道 3.1

    这些是将模块添加到现有 Devise 安装的说明 https github com plataformatec devise wiki How To change an already existing table to add devis
  • Guard 不会加载 WDM

    我正在学习 Michael Hartl 的 Rails 教程 到目前为止该教程非常出色 我在高级设置一章中 他以有利于 TDD 的方式配置 Rails 环境 我安装了 Guard 并且通过运行我在 spec 文件夹中的测试 它一直正常运行
  • 如何设置管理员批准模型的编辑

    我需要一个普通用户可以编辑模型的系统 但编辑实际上只有在管理员批准后才会发生 我发现了一颗宝石 叫做纸迹 https github com airblade paper trail它确实有模型版本控制 但不具体支持我想要做的事情 我想知道其
  • 指定的 sqlite3 gem 未加载

    虽然我对 Ruby on Rails 比较陌生 但我开发应用程序已经有一段时间了 我似乎遇到的问题是 当我创建一个新的 Rails 应用程序 本地 使用 c9 时 当我启动 apache 服务器时 我似乎收到此错误 Specified sq
  • 我在 apache 中使用乘客 for Rails 时收到 403 错误

    我已经安装了所需的工具 并遵循了几个教程 试图让乘客做出回应 我可以访问公共文件夹 public 500 html 或 422 hml 中的静态文件 昨天我通过虚拟主机进入 发现一些乘客错误 但一段时间后 托管重新启动了服务 从那时起我就无
  • Rails:页面加载时间很长

    我有一个 Rails 项目 我在一个控制器中遇到了非常奇怪的事情 浏览器需要大约 3 分钟来加载页面 但 Rails 在日志中写入 Completed 200 OK in 20563ms Views 17144 2ms ActiveReco
  • 当 config.cache_classes = true 时缺少方法

    我有两个名为 Scope 和 ScopeItem 的 ActiveRecord 模型 具有 has many 关系 class Scope lt ActiveRecord Base has many scope items end clas
  • SQL where 连接集必须包含所有值,但可以包含更多值

    我有三张桌子offers sports和连接表offers sports class Offer lt ActiveRecord Base has and belongs to many sports end class Sport lt
  • 如何在不加载关联模型的情况下检查 has_one 是否存在

    我有一个简单的 has one 关系 class User lt ApplicationRecord has one detail has many courses end class Detail lt ApplicationRecord
  • 如何自定义 Mailboxer 电子邮件的模板?

    它会自动发送电子邮件 其中写着 You have a new message subject You have received a new message Body Visit http example com and go to you
  • Googlebot 收到现有模板缺少模板错误

    在过去的几天里 当谷歌机器人尝试访问我们的主页 欢迎 索引 时 我们开始收到缺少模板的错误 我已经盯着这个看了几个小时 知道我只是错过了一些简单的东西 A ActionView MissingTemplate occurred in wel
  • 我们能否知道回形针下载何时完成?

    我有一个应用程序 我需要知道用户的 Rails Paperclip 文件下载时间complete 我的应用程序设置为与 Amazon S3 交互 当用户收到完整的文件时 我需要运行 JavaScript 函数 我怎样才能做到这一点 跟踪天气
  • 渲染:带参数的动作

    我有一个有 2 种方法的类 第一个方法由视图使用一些 GET 参数 params page 调用 我想保存这些参数并通过渲染操作将它们发送到我的第二个方法 class exemple def first sql save of params
  • 如何在 Rails 控制器中调用通道方法?

    我有一个订阅用户的 ActionCable 方法 如果启动新的 convo 我也希望用户订阅新频道 我无法找出在控制器中调用通道方法的正确语法 更新 问题是消息在发送时附加到聊天框 但是当发送第一条消息时 Websocket 连接尚未建立
  • Rails 注释分段错误

    有一些问题围绕着这个问题 但没有什么真正能满足我的需求 After I bundle install下面列出了我的 Gemfile 我运行annotate并出现以下错误 Users nickcoelius rvm gems ruby 1 8
  • git push heroku master 权限被拒绝

    我正在关注 ruby railstutorial 我运行命令 git push heroku master 它吐出了这个错误 Permission denied publickey fatal Could not read from rem
  • 为什么“rails server -e production”会出现“没有路由匹配“/”并且样式表未加载?

    它正在运行 Rails 3 0 0 或 Rails 3 0 5 使用 Ruby 1 9 2 当处于开发模式时 rails server then http 本地主机 3000 http localhost 3000一切正常 并且http l
  • 为什么“捆绑”会在我的开发机器上安装生产 gem?

    Gemfile 说 gem sqlite3 groups gt development test gem mysql2 group gt production 然而当我打字时bundle install在我的开发机器上安装了所有 gem 我
  • 资产管道弃用警告 tsort.rb:226

    我的 Rails 4 2 在开发中运行良好 但在生产环境中我收到以下警告 DEPRECATION WARNING The configuration option config serve static assets has been re

随机推荐

  • 如何在Windows Phone 7中强制使用浅色主题?

    在我的 Windows Phone 7 应用程序中 我想使用浅色主题 无论用户在手机中设置什么主题 怎么做 我需要自定义样式或主题吗 我只想要默认的浅色主题 Thanks Jeff Wilcox 提供了一种使用他开发的主题管理器来实现此目的
  • 对于多对多关系,使用关系数据库好还是nosql好?

    对于多对多关系 使用关系数据库好还是nosql好 假设您有一群用户 每个用户都可以拥有来自同一用户表的朋友 所以它本质上是与其自身的多对多关系 关系数据库中的多对多关系将创建第三个表 现在我想知道假设这个用户表很大 就像里面有数百万人一样
  • 什么是 AU3_Spy.exe?我在哪里可以找到它?

    每当我尝试在 AutoHotkey 中启动 Windows Spy 实用程序时 都会失败并显示错误 无法启动文件 U Software AutoHotkey 1 1 26 00 AU3 Spy exe 最初我以为我下载的文件可能已损坏 然而
  • 如何从 JSON 输出中分离纬度和经度值?

    我正在尝试两个位置之间的两条绘制路线 为此我从 Google Map API Web 服务获取所有点 JSON输出格式 解析后JSON数据和解码点我存储了所有点NSMutableArray 每个索引数组都包含这种类型的值 lt 10 901
  • 在谷歌玩游戏中默默解锁成就,不显示通知

    我正在使用谷歌播放服务 在我的android游戏中取得成就 它实际上是统一的 但并不重要 To unlock achievement I use plugin which calls unlock GoogleApiClient apiCl
  • 如何验证货币字段?

    我有一个带有此货币字段的 ASP NET MVC 4 应用程序 DisplayFormat ApplyFormatInEditMode true DataFormatString 0 c ConvertEmptyStringToNull t
  • 获取通用字典的指定值的多个键?

    从 NET 通用字典中获取键的值很容易 Dictionary
  • 在不使用 WPF 的扩展玻璃框架中绘制文本框

    我正在尝试在表单的扩展玻璃框架上绘制一个文本框 我不会描述这个技术 它是众所周知的 对于那些还没有听说过的人来说 这是一个例子 http www danielmoth com Blog Vista Glass In C aspx http
  • MVC 3 / Razor 中的通用操作链接

    刚刚开始一个新的 MVC 3 项目 我无法获得我在 MVC 2 future 中习惯的强类型通用操作链接和 url 帮助器 我需要推迟哪些 nuget 包和命名空间 Example Html ActionLink
  • 如何安装react(v16.x)和react-scripts(3.x)

    正如标题所示 我不想使用 npx create react app app name 因为该命令安装了react 17x 和react scripts 4 x I tried npm init react app app name scri
  • XML 架构 minOccurs / maxOccurs 默认值

    我想知道 XML 模式规范如何处理这些情况
  • C# 中派生类的可视化

    我有一个基类 代表一个充满小球体的现实世界容器 和一些派生类 这很好用 我的问题是如何进行可视化 我有一个可视化基类的用户控件 为每个派生类都有一个派生的 UserControl 是最佳解决方案吗 还是让一个人为所有人工作更好 Edit 显
  • 如何在 API 级别 < 28 上获取主线程的 Executor

    在 API 级别 28 Pie 上 引入了一种新方法Context获取主线程执行器的类getMainExecutor https developer android com reference android content Context
  • 带颜色条的圆形图

    我正在尝试用颜色条绘制圆形图 几乎像这样 然而 颜色条的最小值当前为1 我希望能够将其设置为 0 import pandas as pd import matplotlib pyplot as plt import matplotlib c
  • 如何使用 MATLAB 的 num2str 格式化输出

    我正在尝试在 MATLAB 中将数字数组作为字符串输出 我知道这很容易使用num2str http www mathworks com access helpdesk help techdoc ref num2str html 但我想要逗号
  • 在 Angular dart 中 type() 的另一种方式

    我完成了 Angular dart 教程 但我有一个问题 要声明可用于依赖注入的类型 我必须这样做 class MyAppModule extends Module MyAppModule type RecipeBookController
  • C 中的静态结构初始化

    我有一个struct输入如下图所示 typedef struct position float X float Y float Z float A position typedef struct move position initial
  • Udev 规则不适用于 Ubuntu 12.04 上的 libusb

    我使用的是 Ubuntu 12 04 5 LTS x86 64 我有一个 USB 设备 它使用 libusb 与计算机进行通信 将其插入计算机并运行通信程序后 出现以下错误 libusb couldn t open USB device d
  • 为什么临时对象必须有不同的地址?

    我感兴趣的情况是 const int n1 123 const int n2 123 我知道这就像字面意思一样123是初始化临时的参数int and const只是一个无聊的编译时检查 但我想知道为什么在这种情况下需要不同的临时变量 而不是
  • has_and_belongs_to_many 连接表的 Rails 迁移

    我该如何做script generate migration为 a 创建一个连接表has and belongs to many关系 该应用程序在 Rails 2 3 2 上运行 但我还安装了 Rails 3 0 3 Where class