`
xu_wccq
  • 浏览: 130871 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

多对多关联数据存储ROR

    博客分类:
  • ruby
阅读更多
Sku MODEL :
class Sku < ActiveRecord::Base

  has_and_belongs_to_many :records,
      :delete_sql=>'DELETE FROM skus_records WHERE sku_id= \'#{id}\' AND record_id = #{record.id}',
      :before_remove=>:record_removed_info,
      :insert_sql =>'insert into skus_records (sku_id,record_id,createdOn) values (\'#{id}\',#{record.id},now())'

end



Record MODEL :
class Record < ActiveRecord::Base
  has_and_belongs_to_many :skus,
      :delete_sql=>'DELETE FROM skus_records WHERE sku_id= \'#{record.id}\' AND record_id = #{id}',
      :before_remove=>:record_removed_info,
      :insert_sql =>'insert into skus_records (sku_id,record_id,createdOn) values (\'#{record.id}\',#{id},now())' 

end



以下是在Record 模型中,指定一条记录,并把此记录与多个sku信息关联。

sku_models = []
[1,2,3,4,5,6,7].each do |id|
sku = Sku.find_by_skuid(id)
sku_models << sku unless sku.nil?
end
record_m = Record.find(224)
record_m.skus.concat(sku_models) unless record_m.nil?   # 向 record 224 的记录添加多个sku的信息。

record_m.skus.delete(sku_models)  # 从 record 224中删除指定的sku的对应关系。


分享到:
评论

相关推荐

    基于RoR的在线考试系统

    这需要在数据库中设置关联关系,如通过has_many和belongs_to关系定义课程与科目、科目与试题之间的关联。 3. **试题库管理**:试题是在线考试的核心,包括选择题、填空题、判断题等多种类型。试题需要分类存储,...

    使用ROR编写ORACLE WEB应用

    定义ORM(对象关系映射)类,这些类对应于Oracle数据库中的表,通过ActiveRecord的特性,如validations、associations等,可以轻松实现数据验证和关联操作。 视图(View)部分,使用ERB(Embedded Ruby)模板语言...

    ROR-Bookmarks

    《Ruby on Rails实战:ROR-Bookmarks项目详解》 ...通过分析和实践"ROR-Bookmarks"项目,开发者不仅可以深化对Ruby和Rails的理解,还能学习到API设计、数据库管理、前端集成等多个方面的知识,进一步提升Web开发技能。

    ThinkPHP v5.0.0 RC4.zip

    增加远程一对多关联 [其它] 日志存储结构调整 Trace调试功能从日志类独立并增强 原Input类功能并入Request类 类库映射文件采用命令行生成 包含应用类库 验证类的check方法data数据取消引用传参 路由增加MISS...

    加密算法参考代码

    它不是用来加密数据,而是生成一个与原始数据相关联的哈希值,然后用发送者的私钥对其进行加密。接收者使用发送者的公钥解密这个签名,对比解密后的哈希值和自己计算的数据哈希,若一致则证明数据未被篡改且来自可...

    汇编语言04-05年试卷(A)及答案[借鉴].pdf

    程序通过 `ASSUME` 指令指定代码段和数据段寄存器的关联。 此外,试卷内容中还包含了一些汇编语言程序示例,这些示例展示了如何用汇编语言编写程序,包括程序的初始化、执行特定任务的指令序列以及程序的结束。 ...

    汇编语言基础--8086汇编指令[整理].pdf

    内存单元是指存储数据或指令的内存空间。栈是一种后进先出(LIFO)的数据结构,用于保存临时数据和函数调用时保存返回地址等。 汇编语言是一种低级语言,与机器语言几乎等价,但为人类阅读和编写提供了便利。由于...

    加法源代码

    - `assume cs:code, ds:data`:设置代码段寄存器 CS 和数据段寄存器 DS 的关联。 - `mov` 指令:用于将数据或地址移动到寄存器中。 - 设置 DS 寄存器为数据段地址。 - DI 和 SI 寄存器分别指向 MUL2 和 MULR 的...

    writingthroughmaterial

    这可能涉及到多个模型,比如一个`Material`模型来存储文件的基本信息,以及关联的`Attachment`模型来处理上传的文件。 在前端,"writingthroughmaterial"很可能使用了HTML、CSS和JavaScript,可能还结合了Bootstrap...

    DevExpress.FlowChart for D7

    4. **数据绑定**:DevExpress FlowChart 支持数据绑定,可以将图表与数据库或其他数据源关联,自动更新图表内容,实现数据驱动的流程图。 5. **布局算法**:该组件提供了自动布局功能,可以自动调整形状的位置和...

    汇编语言指令大全

    4. **移位与循环指令**:用于对寄存器或内存单元中的数据进行左移、右移等操作。 - **SHL**: 左移。 - **SHR**: 右移。 - **ROL**: 循环左移。 - **ROR**: 循环右移。 5. **条件转移指令**:根据标志寄存器的...

    汇编语言指令 掌握良好 开头

    **MOVSB/STOSB/LODSB**:字符串移动/存储/加载指令,用于处理字符串数据。 **REP**:重复前缀指令,用于重复执行前面的指令。 **CLD/STD**:方向标志清除/设置指令,用于控制字符串处理的方向。 **CMPSB/SCASB**...

    Raddit:我建立了一个类似于 Reddit 或 Hacker News 的链接聚合站点。 (Ruby on Rails)

    6. **数据存储**:RoR 默认使用 ActiveRecord 与数据库交互,一般选择 PostgreSQL 或 MySQL 作为后端数据库,存储用户信息、链接、评论和投票数据。 7. **路由系统**:Rails 的路由系统定义了 URL 映射到控制器的...

    geocoding-522

    在“geocoding-522”中,开发者可能已经配置好了一个合适的数据库来存储地理编码的数据。routes.rb文件则定义了URL到控制器方法的映射,决定了用户访问哪些URL时会触发哪些动作。 至于“geocoding-522-master”这个...

    推特克隆

    【推特克隆】项目是基于Ruby on Rails框架的一个轻量级版本的Twitter复制品,旨在为开发者提供一个...通过深入研究和修改这个项目,开发者不仅可以提升对Ruby on Rails的理解,还能学习到如何构建一个完整的社交应用。

    Windows上的Ruby on Rails正式投入生产

    这篇文章将引导新手Web程序员和对RoR感兴趣的开发者如何在Windows上搭建并部署一个稳定的生产环境。 Ruby是一种面向对象的、动态的编程语言,它以其简洁、清晰的语法和强大的元编程能力而受到欢迎。Rails是基于Ruby...

    BunkZilla:一个用于管理本科生铺位的 Ruby on Rails 应用程序

    通过深入理解这些文件和目录,开发者可以对BunkZilla进行定制、扩展和优化,满足更多管理需求。在实际操作中,开发者还需熟悉数据库操作(如SQL)、前端技术(HTML、JavaScript、jQuery)以及版本控制工具(如Git)...

    rails-url-shortener:用 Ruby on Rails 开发的个人 URL 缩短器

    6. **哈希(Hashes)**: 在 Ruby 中,哈希用于存储键值对,常用于关联数据,如 URL 缩短器中存储长 URL 和短码。 7. **数据库迁移(Migrations)**: Rails 的迁移机制用于版本控制数据库结构的变化,方便在不同环境...

    first_app:Ruby on Rails教程的第一个应用程序

    在Ruby on Rails(RoR)框架中创建第一个应用程序是一个学习和熟悉这个强大的Web开发工具的重要步骤。...通过这个过程,开发者能够理解RoR的工作原理,并掌握构建动态、数据驱动的Web应用程序的基本技能。

Global site tag (gtag.js) - Google Analytics