Guest User

Untitled

a guest
Nov 15th, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.49 KB | None | 0 0
  1. SectionEdit id: 6, admin_user_id: 1, section_id: nil, ...
  2.  
  3. SectionEdit id: 1, admin_user_id: 1, section_id: 1, ...
  4.  
  5. C:UsersDavidMy Documentssitessimple_cms>rails console
  6. Loading development environment (Rails 5.0.0.1)
  7.  
  8. irb(main):001:0> me = AdminUser.find(1)
  9. AdminUser Load (4.0ms) SELECT `admin_users`.* FROM `admin_users` WHERE`admin_users`.`id` = 1 LIMIT 1
  10. => #<AdminUser id: 1, first_name: "David", last_name: "Boyette", email: "", hashed_password: nil, created_at: "2016-09-08 02:52:57", updated_at: "2016-09-08 02:52:57", username: "dboyette", salt: nil>
  11.  
  12. irb(main):002:0> me.section_edits
  13. SectionEdit Load (3.5ms) SELECT `section_edits`.* FROM `section_edits` WHERE `section_edits`.`admin_user_id` = 1
  14. => #<ActiveRecord::Associations::CollectionProxy [#<SectionEdit id: 1, admin_user_id: 1, section_id: nil, summary: "Test edit", created_at: "2016-09-09 01:19:08", updated_at: "2016-09-09 01:19:08">, #<SectionEdit id: 2, admin_user_id: 1, section_id: nil, summary: "Test edit", created_at: "2016-09-10 00:05:56", updated_at: "2016-09-10 00:05:56">, #<SectionEdit id: 3, admin_user_id: 1, section_id: nil, summary: "Ch-ch-ch-changes", created_at: "2016-09-10 00:09:39", updated_at: "2016-09-10 00:09:39">, #<SectionEdit id: 4, admin_user_id: 1, section_id: nil, summary: "Test edit", created_at: "2016-09-17 03:32:13", updated_at: "2016-09-17 03:32:13">, #<SectionEdit id: 5, admin_user_id: 1, section_id: nil, summary: "Test edit", created_at: "2016-09-18 00:48:40", updated_at: "2016-09-18 00:48:40">]>
  15.  
  16. irb(main):003:0> section = Section.create(:name => "Section One", :position => 1)
  17. (1.0ms) BEGIN
  18. (1.0ms) ROLLBACK
  19. => #<Section id: nil, page_id: nil, name: "Section One", position: 1, visible: false, content_type: nil, content: nil, created_at: nil, updated_at: nil>
  20.  
  21. irb(main):004:0> section.section_edits => #<ActiveRecord::Associations::CollectionProxy []>
  22.  
  23. irb(main):005:0> edit = SectionEdit.new
  24. => #<SectionEdit id: nil, admin_user_id: nil, section_id: nil, summary: nil, created_at: nil, updated_at: nil>
  25.  
  26. irb(main):006:0> edit.summary = "Test edit"
  27. => "Test edit"
  28.  
  29. irb(main):007:0> section.section_edits << edit
  30. => #<ActiveRecord::Associations::CollectionProxy [#<SectionEdit id: nil, admin_user_id: nil, section_id: nil, summary: "Test edit", created_at: nil, updated_at: nil>]>
  31.  
  32. irb(main):008:0> edit.editor = me
  33. => #<AdminUser id: 1, first_name: "David", last_name: "Boyette", email: "", hashed_password: nil, created_at: "2016-09-08 02:52:57", updated_at: "2016-09-08 02:52:57", username: "dboyette", salt: nil>
  34.  
  35. irb(main):009:0> edit.save
  36. (1.5ms) BEGIN
  37. SQL (3.0ms) INSERT INTO `section_edits` (`admin_user_id`, `summary`, `created_at`, `updated_at`) VALUES (1, 'Test edit', '2016-09-18 01:44:41', '2016-09-18 01:44:41')
  38. (69.3ms) COMMIT
  39. => true
  40.  
  41. irb(main):010:0> section.section_edits
  42. => #<ActiveRecord::Associations::CollectionProxy [#<SectionEdit id: 6, admin_user_id: 1, section_id: nil, summary: "Test edit", created_at: "2016-09-18 01:44:41", updated_at: "2016-09-18 01:44:41">]>
  43.  
  44. irb(main):011:0>
  45.  
  46. class Section < ApplicationRecord
  47.  
  48. belongs_to :page
  49. has_many :section_edits
  50. has_many :editors, :through => :section_edits, :class_name => "AdminUser"
  51.  
  52. class CreateSections < ActiveRecord::Migration[5.0]
  53.  
  54. t.integer "page_id"
  55. # same as t.reference :page
  56. t.string "name"
  57. t.integer "position"
  58. t.boolean "visible", :default => false
  59. t.string "content_type"
  60. t.text "content"
  61. t.timestamps
  62.  
  63. end
  64.  
  65. add_index("sections", "page_id")
  66.  
  67. class SectionEdit < ApplicationRecord
  68.  
  69. belongs_to :editor, :class_name => "AdminUser", :foreign_key => 'admin_user_id'
  70. belongs_to :section
  71.  
  72. class CreateSectionEdits < ActiveRecord::Migration[5.0]
  73.  
  74. t.references :admin_user
  75. t.references :section
  76. t.string "summary"
  77. t.timestamps
  78.  
  79. end
  80. add_index :section_edits, ['admin_user_id', 'section_id']
  81.  
  82. belongs_to :subject
  83. has_many :sections
  84. has_and_belongs_to_many :editors, :class_name => "AdminUser"
  85.  
  86. t.integer "subject_id"
  87. # same as t.references :subject
  88. t.string "name"
  89. t.string "permalink"
  90. t.integer "position"
  91. t.boolean "visible", :default => false
  92. t.timestamps
  93.  
  94. end
  95. add_index("pages", "subject_id")
  96. add_index("pages", "permalink")
  97.  
  98. irb(main):003:0> section = Section.create(:name => "Section One", :position => 1)
  99. (1.0ms) BEGIN
  100. (1.0ms) ROLLBACK
  101. => #<Section id: nil, page_id: nil, name: "Section One", position: 1, visible: false, content_type: nil, content: nil, created_at: nil, updated_at: nil>
  102.  
  103. page = Page.first
  104.  
  105. section = Section.create(:name => "Section One", :position => 1, :page => page)
Add Comment
Please, Sign In to add comment