Class: ShopifyApp::Generators::ShopModelGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- ShopifyApp::Generators::ShopModelGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/shopify_app/shop_model/shop_model_generator.rb
Class Method Summary collapse
-
.next_migration_number(dir) ⇒ Object
for generating a timestamp when using ‘create_migration`.
Instance Method Summary collapse
- #create_shop_fixtures ⇒ Object
- #create_shop_migration ⇒ Object
- #create_shop_model ⇒ Object
- #create_shop_with_access_scopes_migration ⇒ Object
- #update_shopify_app_initializer ⇒ Object
Class Method Details
.next_migration_number(dir) ⇒ Object
for generating a timestamp when using ‘create_migration`
65 66 67 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 65 def next_migration_number(dir) ActiveRecord::Generators::Base.next_migration_number(dir) end |
Instance Method Details
#create_shop_fixtures ⇒ Object
47 48 49 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 47 def create_shop_fixtures copy_file("shops.yml", "test/fixtures/shops.yml") end |
#create_shop_migration ⇒ Object
18 19 20 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 18 def create_shop_migration migration_template("db/migrate/create_shops.erb", "db/migrate/create_shops.rb") end |
#create_shop_model ⇒ Object
14 15 16 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 14 def create_shop_model copy_file("shop.rb", "app/models/shop.rb") end |
#create_shop_with_access_scopes_migration ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 22 def create_shop_with_access_scopes_migration scopes_column_prompt = <<~PROMPT It is highly recommended that apps record the access scopes granted by \ merchants during app installation. See app/models/shop.rb to modify how \ access scopes are stored and retrieved. [WARNING] You will need to update the access_scopes accessors in the Shop model \ to allow shopify_app to store and retrieve scopes when going through OAuth. The following migration will add an `access_scopes` column to the Shop model. \ Do you want to include this migration? [y/n] PROMPT if new_shopify_cli_app? || Rails.env.test? || yes?(scopes_column_prompt) migration_template( "db/migrate/add_shop_access_scopes_column.erb", "db/migrate/add_shop_access_scopes_column.rb", ) end end |
#update_shopify_app_initializer ⇒ Object
43 44 45 |
# File 'lib/generators/shopify_app/shop_model/shop_model_generator.rb', line 43 def update_shopify_app_initializer gsub_file("config/initializers/shopify_app.rb", "ShopifyApp::InMemoryShopSessionStore", "Shop") end |