bread 0.0.11 → 0.0.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -4
- data/Rakefile +15 -19
- data/lib/bread/controller.rb +26 -0
- data/lib/bread/manager/actions.rb +1 -21
- data/lib/bread/manager/crumbs.rb +1 -16
- data/lib/bread/reloader.rb +30 -0
- data/lib/bread/version.rb +1 -1
- data/lib/bread.rb +12 -1
- data/lib/generators/bread/install_generator.rb +17 -2
- data/{test/dummy/app/lib → lib/generators/bread/templates}/bread/actions.rb +18 -18
- data/lib/generators/bread/templates/bread/crumbs.rb +20 -0
- data/lib/generators/bread/templates/view.html.erb +9 -0
- data/spec/controllers/photos_controller_spec.rb +94 -0
- data/spec/controllers/products_controller_spec.rb +94 -0
- data/{test → spec}/dummy/README.rdoc +0 -0
- data/{test → spec}/dummy/Rakefile +0 -0
- data/{test → spec}/dummy/app/assets/javascripts/application.js +0 -0
- data/{test → spec}/dummy/app/assets/stylesheets/application.css +0 -0
- data/{test → spec}/dummy/app/controllers/application_controller.rb +0 -0
- data/spec/dummy/app/controllers/photos_controller.rb +96 -0
- data/spec/dummy/app/controllers/products_controller.rb +98 -0
- data/{test → spec}/dummy/app/helpers/application_helper.rb +0 -0
- data/spec/dummy/app/lib/bread/actions.rb +18 -0
- data/{test → spec}/dummy/app/lib/bread/crumbs.rb +26 -25
- data/spec/dummy/app/models/category.rb +7 -0
- data/spec/dummy/app/models/photo.rb +11 -0
- data/spec/dummy/app/models/product.rb +12 -0
- data/spec/dummy/app/views/layouts/application.html.erb +23 -0
- data/spec/dummy/app/views/photos/_form.html.erb +21 -0
- data/spec/dummy/app/views/photos/edit.html.erb +6 -0
- data/spec/dummy/app/views/photos/index.html.erb +25 -0
- data/spec/dummy/app/views/photos/new.html.erb +5 -0
- data/spec/dummy/app/views/photos/show.html.erb +9 -0
- data/{test → spec}/dummy/app/views/products/_form.html.erb +4 -4
- data/{test → spec}/dummy/app/views/products/edit.html.erb +0 -0
- data/{test → spec}/dummy/app/views/products/index.html.erb +1 -3
- data/{test → spec}/dummy/app/views/products/new.html.erb +0 -0
- data/{test → spec}/dummy/app/views/products/show.html.erb +0 -0
- data/{test → spec}/dummy/bin/bundle +0 -0
- data/{test → spec}/dummy/bin/rails +0 -0
- data/{test → spec}/dummy/bin/rake +0 -0
- data/{test → spec}/dummy/config/application.rb +8 -0
- data/{test → spec}/dummy/config/boot.rb +0 -0
- data/{test → spec}/dummy/config/database.yml +1 -3
- data/{test → spec}/dummy/config/environment.rb +0 -0
- data/{test → spec}/dummy/config/environments/development.rb +0 -0
- data/{test → spec}/dummy/config/environments/production.rb +0 -0
- data/{test → spec}/dummy/config/environments/test.rb +0 -1
- data/{test → spec}/dummy/config/initializers/backtrace_silencers.rb +0 -0
- data/{test → spec}/dummy/config/initializers/filter_parameter_logging.rb +0 -0
- data/{test → spec}/dummy/config/initializers/inflections.rb +0 -0
- data/{test → spec}/dummy/config/initializers/mime_types.rb +0 -0
- data/{test → spec}/dummy/config/initializers/secret_token.rb +1 -1
- data/{test → spec}/dummy/config/initializers/session_store.rb +0 -0
- data/{test → spec}/dummy/config/initializers/wrap_parameters.rb +0 -0
- data/{test → spec}/dummy/config/locales/en.yml +0 -0
- data/{test → spec}/dummy/config/routes.rb +1 -3
- data/{test → spec}/dummy/config.ru +0 -0
- data/{test → spec}/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/migrate/20140912040816_create_foos.rb +9 -0
- data/spec/dummy/db/migrate/20140912042735_create_admin_foos.rb +9 -0
- data/{test/dummy/db/migrate/20140203163238_create_products.rb → spec/dummy/db/migrate/20150312182743_create_products.rb} +1 -1
- data/spec/dummy/db/migrate/20150312182826_create_categories.rb +9 -0
- data/spec/dummy/db/migrate/20150312183119_create_photos.rb +10 -0
- data/{test/dummy/app/controllers/concerns/.keep → spec/dummy/db/production.sqlite3} +0 -0
- data/{test → spec}/dummy/db/schema.rb +22 -21
- data/{test → spec}/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/lib/templates/rails/scaffold_controller/controller.rb +101 -0
- data/spec/dummy/log/development.log +167 -0
- data/spec/dummy/log/production.log +66 -0
- data/spec/dummy/log/test.log +21931 -0
- data/{test → spec}/dummy/public/404.html +0 -0
- data/{test → spec}/dummy/public/422.html +0 -0
- data/{test → spec}/dummy/public/500.html +0 -0
- data/{test → spec}/dummy/public/favicon.ico +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/spec/rails_helper.rb +78 -0
- data/spec/requests/photos_spec.rb +12 -0
- data/spec/requests/products_spec.rb +11 -0
- data/spec/spec_helper.rb +85 -0
- data/spec/support/bread_spec_controller_methods.rb +11 -0
- data/spec/support/controllers/bread_spec_controller_methods.rb +12 -0
- metadata +254 -193
- data/.gitignore +0 -22
- data/Gemfile +0 -26
- data/LICENSE.txt +0 -22
- data/bread.gemspec +0 -24
- data/lib/bread/helper.rb +0 -16
- data/lib/generators/bread/templates/skeleton.rb +0 -12
- data/test/dummy/app/assets/javascripts/product_photos.js +0 -2
- data/test/dummy/app/assets/javascripts/products.js +0 -2
- data/test/dummy/app/assets/stylesheets/product_photos.css +0 -4
- data/test/dummy/app/assets/stylesheets/products.css +0 -4
- data/test/dummy/app/assets/stylesheets/scaffold.css +0 -56
- data/test/dummy/app/controllers/product_photos_controller.rb +0 -63
- data/test/dummy/app/controllers/products_controller.rb +0 -72
- data/test/dummy/app/helpers/product_photos_helper.rb +0 -2
- data/test/dummy/app/helpers/products_helper.rb +0 -2
- data/test/dummy/app/lib/bread/actions_next.rb +0 -43
- data/test/dummy/app/lib/bread/crumbs_next.rb +0 -77
- data/test/dummy/app/mailers/.keep +0 -0
- data/test/dummy/app/models/.keep +0 -0
- data/test/dummy/app/models/concerns/.keep +0 -0
- data/test/dummy/app/models/product.rb +0 -10
- data/test/dummy/app/models/product_photo.rb +0 -10
- data/test/dummy/app/models/user.rb +0 -6
- data/test/dummy/app/views/layouts/application.html.erb +0 -34
- data/test/dummy/app/views/product_photos/_form.html.erb +0 -25
- data/test/dummy/app/views/product_photos/edit.html.erb +0 -6
- data/test/dummy/app/views/product_photos/index.html.erb +0 -31
- data/test/dummy/app/views/product_photos/new.html.erb +0 -5
- data/test/dummy/app/views/product_photos/show.html.erb +0 -19
- data/test/dummy/config/breadcrumbs.rb +0 -18
- data/test/dummy/config/initializers/devise.rb +0 -254
- data/test/dummy/config/locales/devise.en.yml +0 -59
- data/test/dummy/db/migrate/20140306111733_devise_create_users.rb +0 -42
- data/test/dummy/db/migrate/20140306114935_create_product_photos.rb +0 -11
- data/test/dummy/lib/assets/.keep +0 -0
- data/test/dummy/lib/templates/rails/scaffold_controller/controller.rb +0 -146
- data/test/dummy/log/.keep +0 -0
- data/test/dummy/test/bread_test.rb +0 -7
- data/test/dummy/test/controllers/product_photos_controller_test.rb +0 -98
- data/test/dummy/test/controllers/products_controller_test.rb +0 -114
- data/test/dummy/test/fixtures/product_photos.yml +0 -11
- data/test/dummy/test/fixtures/products.yml +0 -9
- data/test/dummy/test/fixtures/users.yml +0 -11
- data/test/dummy/test/helpers/product_photos_helper_test.rb +0 -4
- data/test/dummy/test/helpers/products_helper_test.rb +0 -4
- data/test/dummy/test/integration/devise_test.rb +0 -166
- data/test/dummy/test/integration/navigation_test.rb +0 -10
- data/test/dummy/test/models/product_photo_test.rb +0 -7
- data/test/dummy/test/models/product_test.rb +0 -7
- data/test/dummy/test/models/user_test.rb +0 -7
- data/test/dummy/test/support/asserts.rb +0 -38
- data/test/dummy/test/support/others.rb +0 -20
- data/test/test_helper.rb +0 -21
@@ -0,0 +1,98 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
class ProductsController < ApplicationController
|
4
|
+
|
5
|
+
# Use callbacks to share common setup or constraints between actions.
|
6
|
+
before_actions do
|
7
|
+
# all { } # pre-fetching authorization step
|
8
|
+
# all { } # load your nested resource's parent here
|
9
|
+
only(:index) { @products = Product.all }
|
10
|
+
only(:new) { @product = Product.new }
|
11
|
+
only(:create) { @product = Product.new(product_params) }
|
12
|
+
only(:show, :edit, :update, :destroy) { @product = Product.find(params[:id]) }
|
13
|
+
# all { } # post-fetching authorization step
|
14
|
+
end
|
15
|
+
|
16
|
+
# GET /products
|
17
|
+
# GET /products.json
|
18
|
+
def index
|
19
|
+
respond_to do |format|
|
20
|
+
format.html # index.html.erb
|
21
|
+
format.json { render json: @products }
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
# GET /products/new
|
29
|
+
def new
|
30
|
+
end
|
31
|
+
|
32
|
+
# POST /products
|
33
|
+
# POST /products.json
|
34
|
+
def create
|
35
|
+
respond_to do |format|
|
36
|
+
if @product.save
|
37
|
+
format.html { redirect_to @product, notice: 'Product was successfully created.' }
|
38
|
+
format.json { render json: @product, status: :created }
|
39
|
+
else
|
40
|
+
format.html { render action: 'new' }
|
41
|
+
format.json { render json: @product.errors, status: :unprocessable_entity }
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
|
50
|
+
# GET /products/1
|
51
|
+
# GET /products/1.json
|
52
|
+
def show
|
53
|
+
respond_to do |format|
|
54
|
+
format.html # show.html.erb
|
55
|
+
format.json { render json: @product }
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
# GET /products/1/edit
|
60
|
+
def edit
|
61
|
+
end
|
62
|
+
|
63
|
+
# PATCH/PUT /products/1
|
64
|
+
# PATCH/PUT /products/1.json
|
65
|
+
def update
|
66
|
+
respond_to do |format|
|
67
|
+
if @product.update(product_params)
|
68
|
+
format.html { redirect_to @product, notice: 'Product was successfully updated.' }
|
69
|
+
format.json { head :no_content }
|
70
|
+
else
|
71
|
+
format.html { render action: 'edit' }
|
72
|
+
format.json { render json: @product.errors, status: :unprocessable_entity }
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
# DELETE /products/1
|
78
|
+
# DELETE /products/1
|
79
|
+
def destroy
|
80
|
+
respond_to do |format|
|
81
|
+
if @product.destroy
|
82
|
+
format.html { redirect_to products_url, notice: 'Product was successfully destroyed.' }
|
83
|
+
format.json { head :no_content }
|
84
|
+
else
|
85
|
+
format.html { render action: 'edit' }
|
86
|
+
format.json { render json: @product.errors, status: :unprocessable_entity }
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
private
|
92
|
+
|
93
|
+
# Only allow a trusted parameter "white list" through.
|
94
|
+
def product_params
|
95
|
+
params.require(:product).permit(:name, :category_id)
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
File without changes
|
@@ -0,0 +1,18 @@
|
|
1
|
+
Bread.actions.config do
|
2
|
+
|
3
|
+
controller :products, parent_crumbs: [:@root] do
|
4
|
+
actions(:index) { crumbs :@products }
|
5
|
+
actions(:new) { crumbs :@products, :@new_product }
|
6
|
+
actions(:by_category) { crumbs :@products, :@products_by_category }
|
7
|
+
actions(:show) { crumbs :@products, :@product }
|
8
|
+
actions(:edit) { crumbs :@products, :@product, :@edit_product }
|
9
|
+
end
|
10
|
+
|
11
|
+
controller :photos, parent_crumbs: [:@root, :@products, :@product] do
|
12
|
+
actions(:index) { crumbs :@photos }
|
13
|
+
actions(:new) { crumbs :@photos, :@new_photo }
|
14
|
+
actions(:show) { crumbs :@photos, :@photo }
|
15
|
+
actions(:edit) { crumbs :@photos, :@photo, :@edit_photo }
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
@@ -1,25 +1,26 @@
|
|
1
|
-
Bread.crumbs.config do
|
2
|
-
|
3
|
-
crumb(:@root) { to "Home", :root, icon: 'home' }
|
4
|
-
|
5
|
-
# products
|
6
|
-
crumb(:@products) { to "Products", h.products_path }
|
7
|
-
crumb(:@new_product) { to "New", h.new_product_path }
|
8
|
-
crumb(:@edit_product) { to "Edit", h.edit_product_path }
|
9
|
-
crumb(:@products_by_category) { to @category, h.by_category_products_path(@category) }
|
10
|
-
crumb(:@product) {
|
11
|
-
cat = @product.category
|
12
|
-
to cat, h.by_category_products_path(category: cat) if !cat.blank?
|
13
|
-
to @product.
|
14
|
-
}
|
15
|
-
|
16
|
-
# photos
|
17
|
-
crumb(:@photos) { to "Photos", h.
|
18
|
-
crumb(:@new_photo) { to "New", h.
|
19
|
-
crumb(:@edit_photo) { to "Edit", h.
|
20
|
-
crumb(:@photo) { to @
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
1
|
+
Bread.crumbs.config do
|
2
|
+
|
3
|
+
crumb(:@root) { to "Home", :root, icon: 'home' }
|
4
|
+
|
5
|
+
# products
|
6
|
+
crumb(:@products) { to "Products", h.products_path }
|
7
|
+
crumb(:@new_product) { to "New", h.new_product_path }
|
8
|
+
crumb(:@edit_product) { to "Edit", h.edit_product_path }
|
9
|
+
crumb(:@products_by_category) { to @category, h.by_category_products_path(@category) }
|
10
|
+
crumb(:@product) {
|
11
|
+
cat = @product.category
|
12
|
+
to cat, h.by_category_products_path(category: cat) if !cat.blank?
|
13
|
+
to @product.name, h.product_path(@product)
|
14
|
+
}
|
15
|
+
|
16
|
+
# photos
|
17
|
+
crumb(:@photos) { to "Photos", h.product_photos_path }
|
18
|
+
crumb(:@new_photo) { to "New", h.new_product_photo_path }
|
19
|
+
crumb(:@edit_photo) { to "Edit", h.edit_product_photo_path }
|
20
|
+
crumb(:@photo) { to @photo.name, h.product_photo_path }
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
class Product < ActiveRecord::Base
|
2
|
+
belongs_to :category
|
3
|
+
has_many :photos
|
4
|
+
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_length_of :name, minimum: 3
|
7
|
+
|
8
|
+
# for testing purposes this app does not permit destroying it's models
|
9
|
+
before_destroy do
|
10
|
+
false
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>Dummy</title>
|
5
|
+
<%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
|
6
|
+
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
|
7
|
+
<%= csrf_meta_tags %>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
|
11
|
+
<ul id="breadcrumbs">
|
12
|
+
<% bread.each do |crumb| %>
|
13
|
+
<li class="<%= 'active' if crumb.current? %>">
|
14
|
+
<%= link_to crumb.title, crumb.path, class: "icon icon-#{crumb[:icon]}" %>
|
15
|
+
</li>
|
16
|
+
<% end %>
|
17
|
+
</ul>
|
18
|
+
|
19
|
+
|
20
|
+
<%= yield %>
|
21
|
+
|
22
|
+
</body>
|
23
|
+
</html>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<%= form_for([product, @photo]) do |f| %>
|
2
|
+
<% if @photo.errors.any? %>
|
3
|
+
<div id="error_explanation">
|
4
|
+
<h2><%= pluralize(@photo.errors.count, "error") %> prohibited this photo from being saved:</h2>
|
5
|
+
|
6
|
+
<ul>
|
7
|
+
<% @photo.errors.full_messages.each do |message| %>
|
8
|
+
<li><%= message %></li>
|
9
|
+
<% end %>
|
10
|
+
</ul>
|
11
|
+
</div>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<div class="field">
|
15
|
+
<%= f.label :product_id %><br>
|
16
|
+
<%= f.text_field :product_id %>
|
17
|
+
</div>
|
18
|
+
<div class="actions">
|
19
|
+
<%= f.submit %>
|
20
|
+
</div>
|
21
|
+
<% end %>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<h1>Listing photos</h1>
|
2
|
+
|
3
|
+
<table>
|
4
|
+
<thead>
|
5
|
+
<tr>
|
6
|
+
<th>Product</th>
|
7
|
+
<th colspan="3"></th>
|
8
|
+
</tr>
|
9
|
+
</thead>
|
10
|
+
|
11
|
+
<tbody>
|
12
|
+
<% @photos.each do |photo| %>
|
13
|
+
<tr>
|
14
|
+
<td><%= photo.product %></td>
|
15
|
+
<td><%= link_to 'Show', [product, photo] %></td>
|
16
|
+
<td><%= link_to 'Edit', edit_product_photo_path(@product, photo) %></td>
|
17
|
+
<td><%= link_to 'Destroy', [product, photo], method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
18
|
+
</tr>
|
19
|
+
<% end %>
|
20
|
+
</tbody>
|
21
|
+
</table>
|
22
|
+
|
23
|
+
<br>
|
24
|
+
|
25
|
+
<%= link_to 'New Photo', new_product_photo_path(@product) %>
|
@@ -4,8 +4,8 @@
|
|
4
4
|
<h2><%= pluralize(@product.errors.count, "error") %> prohibited this product from being saved:</h2>
|
5
5
|
|
6
6
|
<ul>
|
7
|
-
<% @product.errors.full_messages.each do |
|
8
|
-
<li><%=
|
7
|
+
<% @product.errors.full_messages.each do |message| %>
|
8
|
+
<li><%= message %></li>
|
9
9
|
<% end %>
|
10
10
|
</ul>
|
11
11
|
</div>
|
@@ -16,8 +16,8 @@
|
|
16
16
|
<%= f.text_field :name %>
|
17
17
|
</div>
|
18
18
|
<div class="field">
|
19
|
-
<%= f.label :
|
20
|
-
<%= f.text_field :
|
19
|
+
<%= f.label :category_id %><br>
|
20
|
+
<%= f.text_field :category_id %>
|
21
21
|
</div>
|
22
22
|
<div class="actions">
|
23
23
|
<%= f.submit %>
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -18,6 +18,14 @@ module Dummy
|
|
18
18
|
# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
|
19
19
|
# config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
|
20
20
|
# config.i18n.default_locale = :de
|
21
|
+
|
22
|
+
# don't generate RSpec tests for views and helpers
|
23
|
+
config.generators do |g|
|
24
|
+
g.test_framework :rspec
|
25
|
+
g.stylesheets = false
|
26
|
+
g.javascripts = false
|
27
|
+
g.helper = false
|
28
|
+
end
|
21
29
|
end
|
22
30
|
end
|
23
31
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -30,7 +30,6 @@ Dummy::Application.configure do
|
|
30
30
|
# The :test delivery method accumulates sent emails in the
|
31
31
|
# ActionMailer::Base.deliveries array.
|
32
32
|
config.action_mailer.delivery_method = :test
|
33
|
-
config.action_mailer.default_url_options = {host: 'example.com'}
|
34
33
|
|
35
34
|
# Print deprecation notices to the stderr.
|
36
35
|
config.active_support.deprecation = :stderr
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -9,4 +9,4 @@
|
|
9
9
|
|
10
10
|
# Make sure your secret_key_base is kept private
|
11
11
|
# if you're sharing your code publicly.
|
12
|
-
Dummy::Application.config.secret_key_base = '
|
12
|
+
Dummy::Application.config.secret_key_base = 'f8f1cfd724082fee10202ea60f857d16b79a9aa676f85c35e0150f8119fa2da3911c966f051018054f6eaffd8165a1b7e790ff18634e40dbe11f6863fedb5cff'
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,15 +1,13 @@
|
|
1
1
|
Rails.application.routes.draw do
|
2
2
|
|
3
|
-
devise_for :users
|
4
3
|
root to: "products#index"
|
5
4
|
|
6
5
|
resources :products do
|
7
|
-
resources :
|
6
|
+
resources :photos
|
8
7
|
|
9
8
|
collection do
|
10
9
|
get 'by_category/:category' => 'products#by_category', as: :by_category
|
11
10
|
end
|
12
11
|
end
|
13
12
|
|
14
|
-
#mount Bread::Engine => "/bread"
|
15
13
|
end
|
File without changes
|
Binary file
|
File without changes
|
@@ -11,41 +11,42 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 20150312183119) do
|
15
15
|
|
16
|
-
create_table "
|
17
|
-
t.
|
18
|
-
t.string "name"
|
19
|
-
t.integer "order", default: 0
|
16
|
+
create_table "admin_foos", force: true do |t|
|
17
|
+
t.string "bar"
|
20
18
|
t.datetime "created_at"
|
21
19
|
t.datetime "updated_at"
|
22
20
|
end
|
23
21
|
|
24
|
-
|
22
|
+
create_table "categories", force: true do |t|
|
23
|
+
t.string "handle"
|
24
|
+
t.datetime "created_at"
|
25
|
+
t.datetime "updated_at"
|
26
|
+
end
|
25
27
|
|
26
|
-
create_table "
|
28
|
+
create_table "foos", force: true do |t|
|
29
|
+
t.string "bar"
|
30
|
+
t.datetime "created_at"
|
31
|
+
t.datetime "updated_at"
|
32
|
+
end
|
33
|
+
|
34
|
+
create_table "photos", force: true do |t|
|
35
|
+
t.integer "product_id"
|
27
36
|
t.string "name"
|
28
|
-
t.string "category"
|
29
37
|
t.datetime "created_at"
|
30
38
|
t.datetime "updated_at"
|
31
39
|
end
|
32
40
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
t.string "
|
37
|
-
t.
|
38
|
-
t.datetime "remember_created_at"
|
39
|
-
t.integer "sign_in_count", default: 0, null: false
|
40
|
-
t.datetime "current_sign_in_at"
|
41
|
-
t.datetime "last_sign_in_at"
|
42
|
-
t.string "current_sign_in_ip"
|
43
|
-
t.string "last_sign_in_ip"
|
41
|
+
add_index "photos", ["product_id"], name: "index_photos_on_product_id"
|
42
|
+
|
43
|
+
create_table "products", force: true do |t|
|
44
|
+
t.string "name"
|
45
|
+
t.integer "category_id"
|
44
46
|
t.datetime "created_at"
|
45
47
|
t.datetime "updated_at"
|
46
48
|
end
|
47
49
|
|
48
|
-
add_index "
|
49
|
-
add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
50
|
+
add_index "products", ["category_id"], name: "index_products_on_category_id"
|
50
51
|
|
51
52
|
end
|
Binary file
|