tree_structure 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 231e40f70e18a30b7f61dfbaaa8bd204138075338fd74e12c656bfdb789c02b7
4
- data.tar.gz: 4a16610e2dd7f0bddea83ca03a04322898f2fc507301d1ea77f93550158dc363
3
+ metadata.gz: d032b8c727b5b4e55d53740672656ca1a1a9638d0c71de8d8dd7673581d33a4b
4
+ data.tar.gz: c82e3c06808f6fb3bec5600a3e2f44e785ba60d0ae7b56a09c4df7f3f9278335
5
5
  SHA512:
6
- metadata.gz: b5ff00d1652e3302eb61d14f1e89dffab832ac5458061e499bd78b2657f3c860e90221636a578cf1f217c99469d7875bb0263d0cd444e151b1b6b2f7c47fc09a
7
- data.tar.gz: fbdc7162345246e6891edabad91d50880cbd516bea53656ff0fdb045f6ddd157a3533aa298f18da8f03c5e486e8440034810112998b44eabfdcc92ba7ddf97a9
6
+ metadata.gz: cefcd2b009f0bb73fee3fbb7307823c43c1a33bfb671085a4ea7704065544b37ec313ba6558b6425cbd896aeb86245621c6c88e11d2e32f5fa0a85ede7708a81
7
+ data.tar.gz: fd2f6ad0286a9f9b4e4a891b75089c3cfa0a40c875f7c113d0287c0664ce54d0a63b9e9c54708aa2c71c8753026c7270cc8424de7ea7d84cedc5415a22e070be
data/README.md CHANGED
@@ -1,8 +1,5 @@
1
1
  # TreeStructure
2
-
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/tree_structure`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
2
+ Tree Structure allows the records of a ActiveRecord model to be organized in a tree structure.
6
3
 
7
4
  ## Installation
8
5
 
@@ -20,15 +17,52 @@ Or install it yourself as:
20
17
 
21
18
  $ gem install tree_structure
22
19
 
23
- ## Usage
20
+ ## Development
24
21
 
25
- TODO: Write usage instructions here
22
+ After installing the `tree_structure` gem in your Gemfile, follow these steps to set up the tree structure:
26
23
 
27
- ## Development
24
+ 1. **Add a `parent_id` column** to the table where you want to organize the tree structure. You can do this by creating a migration:
25
+ ```ruby
26
+ class AddParentIdToYourModel < ActiveRecord::Migration[6.0]
27
+ def change
28
+ add_column :your_model_name, :parent_id, :integer
29
+ add_index :your_model_name, :parent_id
30
+ end
31
+ end
32
+ ```
33
+
34
+
35
+ 2. **Include the TreeStructure module** in the model that will be organized in a tree structure. For example:
36
+
37
+ ```ruby
38
+ class YourModelName < ApplicationRecord
39
+ include TreeStructure
40
+ end
41
+ ```
42
+
43
+
44
+ 3. **Run your migrations** to update the database schema:
45
+ ```ruby
46
+ rails db:migrate
47
+ ````
28
48
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
49
+ ### Example Usage
50
+
51
+ Once you have set up your model, you can start using the tree structure features. For example:
52
+
53
+ # Create root nodes
54
+ ```ruby
55
+ root1 = YourModelName.create(name: 'Root 1')
56
+ root2 = YourModelName.create(name: 'Root 2')
57
+ ```
58
+
59
+ # Create child nodes
60
+ ```ruby
61
+ child1 = YourModelName.create(name: 'Child 1', parent: root1)
62
+ child2 = YourModelName.create(name: 'Child 2', parent: root1)
63
+ child3 = YourModelName.create(name: 'Child 3', parent: root2)
64
+ ```
30
65
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
66
 
33
67
  ## Contributing
34
68
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TreeStructure
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tree_structure
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Akhlak Hussain