ums 0.0.4 → 0.1.0
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 +4 -4
- data/app/controllers/ums/functions_controller.rb +3 -3
- data/app/controllers/ums/roles_controller.rb +3 -3
- data/app/controllers/ums/users_controller.rb +24 -13
- data/app/helpers/ums/application_helper.rb +1 -1
- data/app/models/ums/user.rb +11 -4
- data/app/views/ums/users/_form.html.erb +5 -2
- data/app/views/ums/users/login.html.erb +2 -2
- data/app/views/ums/users/welcome.html.erb +10 -0
- data/config/routes.rb +3 -0
- data/db/migrate/20131016015833_create_ums_users.rb +1 -0
- data/db/seeds.rb +2 -1
- data/lib/ums/engine.rb +5 -0
- data/lib/ums/version.rb +1 -1
- data/test/dummy/log/development.log +72 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7923f5094754722a2c451d3a951249487bab2668
|
4
|
+
data.tar.gz: f362e18f75cf1cd6dd74ecd2559fed18a8f8c100
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 898fdaa99bed7774ce6de88c9cd2930b886f0c5fb3bd8c00aee05cd5fa6d4e56f5bafff02541e0cc5bab982cef293ef6e9906004efe491a1a79336457a1d24ec
|
7
|
+
data.tar.gz: 4d26b8df5511a8165a1139361ace7bb3f884ecb04ba1c2be450d5311e24438857c8e23680cf1eef3f0a6825c2f0d943c3ac9d90887b7eab8b731754d777a4129
|
@@ -28,7 +28,7 @@ class Ums::FunctionsController < ApplicationController
|
|
28
28
|
|
29
29
|
respond_to do |format|
|
30
30
|
if @ums_function.save
|
31
|
-
format.html { redirect_to ums.functions_url, notice: '
|
31
|
+
format.html { redirect_to ums.functions_url, notice: '功能创建创建成功.' }
|
32
32
|
format.json { render action: 'show', status: :created, location: @ums_function }
|
33
33
|
else
|
34
34
|
format.html { render action: 'new' }
|
@@ -42,7 +42,7 @@ class Ums::FunctionsController < ApplicationController
|
|
42
42
|
def update
|
43
43
|
respond_to do |format|
|
44
44
|
if @ums_function.update(ums_function_params)
|
45
|
-
format.html { redirect_to ums.functions_url, notice: '
|
45
|
+
format.html { redirect_to ums.functions_url, notice: '功能修改成功' }
|
46
46
|
format.json { head :no_content }
|
47
47
|
else
|
48
48
|
format.html { render action: 'edit' }
|
@@ -56,7 +56,7 @@ class Ums::FunctionsController < ApplicationController
|
|
56
56
|
def destroy
|
57
57
|
@ums_function.destroy
|
58
58
|
respond_to do |format|
|
59
|
-
format.html { redirect_to ums.functions_url }
|
59
|
+
format.html { redirect_to ums.functions_url , notice: '功能删除成功.'}
|
60
60
|
format.json { head :no_content }
|
61
61
|
end
|
62
62
|
end
|
@@ -29,7 +29,7 @@ class Ums::RolesController < ApplicationController
|
|
29
29
|
|
30
30
|
respond_to do |format|
|
31
31
|
if @ums_role.save
|
32
|
-
format.html { redirect_to ums.roles_url, notice: '
|
32
|
+
format.html { redirect_to ums.roles_url, notice: '角色创建成功.' }
|
33
33
|
format.json { render action: 'show', status: :created, location: @ums_role }
|
34
34
|
else
|
35
35
|
format.html { render action: 'new' }
|
@@ -43,7 +43,7 @@ class Ums::RolesController < ApplicationController
|
|
43
43
|
def update
|
44
44
|
respond_to do |format|
|
45
45
|
if @ums_role.update(ums_role_params)
|
46
|
-
format.html { redirect_to ums.roles_url, notice: '
|
46
|
+
format.html { redirect_to ums.roles_url, notice: '角色修改成功.' }
|
47
47
|
format.json { head :no_content }
|
48
48
|
else
|
49
49
|
format.html { render action: 'edit' }
|
@@ -61,7 +61,7 @@ class Ums::RolesController < ApplicationController
|
|
61
61
|
@ums_role.destroy
|
62
62
|
end
|
63
63
|
respond_to do |format|
|
64
|
-
format.html { redirect_to ums.roles_url }
|
64
|
+
format.html { redirect_to ums.roles_url , notice: '角色删除成功.'}
|
65
65
|
format.json { head :no_content }
|
66
66
|
end
|
67
67
|
end
|
@@ -1,34 +1,42 @@
|
|
1
1
|
class Ums::UsersController < ApplicationController
|
2
2
|
|
3
3
|
skip_before_filter :verify_authenticity_token, :if => Proc.new { |c| c.request.format == 'application/json' }
|
4
|
-
skip_before_filter :authorize, :only => [:login,:logout
|
4
|
+
skip_before_filter :authorize, :only => [:login,:logout]
|
5
5
|
|
6
6
|
before_action :set_ums_user, only: [:show, :edit, :update, :destroy]
|
7
7
|
before_action :set_ums_roles, only: [:new,:edit,:update,:create]
|
8
8
|
# GET /ums/users
|
9
9
|
# GET /ums/users.json
|
10
10
|
|
11
|
-
|
11
|
+
def welcome
|
12
|
+
end
|
13
|
+
|
14
|
+
def login
|
12
15
|
if request.post?
|
13
|
-
|
14
|
-
user = Ums::User.authenticate(params[:login_name],params[:password])
|
16
|
+
user = Ums::User.authenticate(params[:account],params[:password])
|
15
17
|
if user
|
16
18
|
login_count = user.login_count
|
17
19
|
login_count = 0 if login_count.nil?
|
18
20
|
login_count += 1
|
21
|
+
|
22
|
+
session[:last_login_time] = user.last_login_time
|
23
|
+
session[:last_login_ip] = user.last_login_ip
|
24
|
+
session[:login_count] = login_count
|
25
|
+
|
19
26
|
user.last_login_time = Time.now
|
20
27
|
user.last_login_ip = request.remote_ip
|
21
28
|
user.login_count = login_count
|
22
29
|
user.save(validate: false)
|
23
30
|
|
24
31
|
session[:user_id] = user.id
|
32
|
+
session[:user_account] = user.account
|
25
33
|
session[:user_name] = user.name
|
26
34
|
|
27
35
|
uri = session[:original_uri]
|
28
36
|
session[:original_uri] = nil
|
29
|
-
log_info("login",params[:
|
37
|
+
log_info("login",params[:account] + " login success",request.remote_ip)
|
30
38
|
|
31
|
-
user_permission = '^redactor_rails|' #
|
39
|
+
user_permission = '^redactor_rails|welcome|profile|password|' # 上传组件和用户基础操作默认许可
|
32
40
|
user.role.functions.each do |function|
|
33
41
|
if function.action.blank?
|
34
42
|
user_permission += '^' + function.controller
|
@@ -43,11 +51,11 @@ class Ums::UsersController < ApplicationController
|
|
43
51
|
|
44
52
|
respond_to do |format|
|
45
53
|
format.html { redirect_to uri || main_index_path }
|
46
|
-
format.json { render json: {is_success:"true",message:""} }
|
54
|
+
format.json { render json: {is_success:"true",message:"登录成功",user:user} }
|
47
55
|
end
|
48
56
|
|
49
57
|
else
|
50
|
-
log_error("login",params[:
|
58
|
+
log_error("login",params[:account] + " login failed",request.remote_ip)
|
51
59
|
respond_to do |format|
|
52
60
|
error_info = "无效的账号或密码"
|
53
61
|
format.html { flash.now[:notice] = error_info }
|
@@ -60,8 +68,11 @@ class Ums::UsersController < ApplicationController
|
|
60
68
|
|
61
69
|
def logout
|
62
70
|
session[:user_id] = nil
|
71
|
+
session[:user_account] = nil
|
63
72
|
session[:user_name] = nil
|
64
|
-
|
73
|
+
session[:last_login_time] = nil
|
74
|
+
session[:last_login_ip] = nil
|
75
|
+
session[:login_count] = nil
|
65
76
|
#flash[:notice] = "已退出"
|
66
77
|
redirect_to '/' #main_index_path
|
67
78
|
end
|
@@ -127,7 +138,7 @@ class Ums::UsersController < ApplicationController
|
|
127
138
|
|
128
139
|
respond_to do |format|
|
129
140
|
if @ums_user.save
|
130
|
-
format.html { redirect_to ums.users_url, notice: '
|
141
|
+
format.html { redirect_to ums.users_url, notice: '用户创建成功.' }
|
131
142
|
format.json { render action: 'show', status: :created, location: @ums_user }
|
132
143
|
else
|
133
144
|
format.html { render action: 'new' }
|
@@ -141,7 +152,7 @@ class Ums::UsersController < ApplicationController
|
|
141
152
|
def update
|
142
153
|
respond_to do |format|
|
143
154
|
if @ums_user.update(ums_user_params)
|
144
|
-
format.html { redirect_to ums.users_url, notice: '
|
155
|
+
format.html { redirect_to ums.users_url, notice: '用户修改成功.' }
|
145
156
|
format.json { head :no_content }
|
146
157
|
else
|
147
158
|
format.html { render action: 'edit' }
|
@@ -155,7 +166,7 @@ class Ums::UsersController < ApplicationController
|
|
155
166
|
def destroy
|
156
167
|
@ums_user.destroy
|
157
168
|
respond_to do |format|
|
158
|
-
format.html { redirect_to ums.users_url }
|
169
|
+
format.html { redirect_to ums.users_url, notice: '用户删除成功.' }
|
159
170
|
format.json { head :no_content }
|
160
171
|
end
|
161
172
|
end
|
@@ -168,7 +179,7 @@ class Ums::UsersController < ApplicationController
|
|
168
179
|
|
169
180
|
# Never trust parameters from the scary internet, only allow the white list through.
|
170
181
|
def ums_user_params
|
171
|
-
params.require(:user).permit(:
|
182
|
+
params.require(:user).permit(:account, :name,:email, :password, :role_id, :is_enabled)
|
172
183
|
end
|
173
184
|
|
174
185
|
def set_ums_roles
|
data/app/models/ums/user.rb
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
class Ums::User < ActiveRecord::Base
|
2
2
|
belongs_to :role
|
3
3
|
|
4
|
-
validates_presence_of :
|
5
|
-
validates_uniqueness_of :name
|
4
|
+
validates_presence_of :account,:role
|
5
|
+
validates_uniqueness_of :account,:name
|
6
6
|
|
7
7
|
validate :password_non_blank
|
8
8
|
|
9
9
|
|
10
|
-
def self.authenticate(
|
11
|
-
user = self.
|
10
|
+
def self.authenticate(account,password)
|
11
|
+
user = self.find_by_account(account)
|
12
12
|
if user
|
13
13
|
expected_password = encrypted_password(password,user.salt)
|
14
|
+
#logger.debug("user.hashed_password:" + user.hashed_password + ",expected_password:" + expected_password)
|
14
15
|
if user.hashed_password != expected_password || !user.is_enabled
|
15
16
|
user = nil
|
16
17
|
end
|
@@ -38,6 +39,12 @@ class Ums::User < ActiveRecord::Base
|
|
38
39
|
create_salt
|
39
40
|
self.hashed_password = Ums::User.encrypted_password(pwd,self.salt)
|
40
41
|
end
|
42
|
+
|
43
|
+
def as_json options=nil
|
44
|
+
options ||= {}
|
45
|
+
options[:except] = [:hashed_password,:salt]
|
46
|
+
super options
|
47
|
+
end
|
41
48
|
|
42
49
|
private
|
43
50
|
def password_non_blank
|
@@ -12,10 +12,13 @@
|
|
12
12
|
<% end %>
|
13
13
|
|
14
14
|
<div class="field">
|
15
|
-
<%= f.label :
|
15
|
+
<%= f.label :account ,'账号'%>
|
16
|
+
<%= f.text_field :account %>
|
17
|
+
</div>
|
18
|
+
<div class="field">
|
19
|
+
<%= f.label :name ,'姓名'%>
|
16
20
|
<%= f.text_field :name %>
|
17
21
|
</div>
|
18
|
-
|
19
22
|
<div class="field">
|
20
23
|
<%= f.label :password ,"密码" %>
|
21
24
|
<%= f.text_field :password %>
|
@@ -8,8 +8,8 @@
|
|
8
8
|
<fieldset>
|
9
9
|
<legend>请登录</legend>
|
10
10
|
<div>
|
11
|
-
<label for="
|
12
|
-
<%= text_field_tag :
|
11
|
+
<label for="account">账号:</label>
|
12
|
+
<%= text_field_tag :account,params[:account] %>
|
13
13
|
</div>
|
14
14
|
<div>
|
15
15
|
<label for="password">密码:</label>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
|
2
|
+
<fieldset>
|
3
|
+
<legend>欢迎您的登录</legend>
|
4
|
+
<div>
|
5
|
+
这是您第<%= session[:login_count]%>次登录.
|
6
|
+
<% if session[:login_count] > 1 %>
|
7
|
+
您上次登录时间是: <%= session[:last_login_time].strftime('%Y-%m-%d %H:%M') %>,登录IP为: <%= session[:last_login_ip]%>
|
8
|
+
<% end %>
|
9
|
+
</div>
|
10
|
+
</fieldset>
|
data/config/routes.rb
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
Ums::Engine.routes.draw do
|
2
|
+
|
3
|
+
root :to => 'users#welcome'
|
2
4
|
get "users/login"
|
3
5
|
post "users/login"
|
4
6
|
get "users/password"
|
@@ -6,6 +8,7 @@ Ums::Engine.routes.draw do
|
|
6
8
|
get "users/profile"
|
7
9
|
patch "users/profile"
|
8
10
|
get "users/logout"
|
11
|
+
get "users/welcome"
|
9
12
|
resources :users
|
10
13
|
resources :roles
|
11
14
|
resources :functions
|
data/db/seeds.rb
CHANGED
@@ -7,5 +7,6 @@
|
|
7
7
|
# Mayor.create(name: 'Emanuel', city: cities.first)
|
8
8
|
functions = Ums::Function.create([{name:"用户管理",controller:'ums'}])
|
9
9
|
role = Ums::Role.create(name:'系统管理员',functions:functions)
|
10
|
-
|
10
|
+
#初始账号:admin 密码:admin
|
11
|
+
Ums::User.create(account: "admin",name: "系统管理员",hashed_password: "4b1323850c4283da817ef95f32e0b00f2f31a4b2",
|
11
12
|
salt: "0.8575214227141923",login_count:0,is_enabled:true,role:role)
|
data/lib/ums/engine.rb
CHANGED
data/lib/ums/version.rb
CHANGED
@@ -0,0 +1,72 @@
|
|
1
|
+
[1m[36m (2.1ms)[0m [1mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
2
|
+
[1m[35m (0.8ms)[0m CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
|
3
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.3ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
4
|
+
Migrating to CreateUmsFunctions (20131016015419)
|
5
|
+
[1m[35m (0.1ms)[0m begin transaction
|
6
|
+
[1m[36m (0.8ms)[0m [1mCREATE TABLE "ums_functions" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "controller" varchar(255), "action" varchar(255), "created_at" datetime, "updated_at" datetime) [0m
|
7
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131016015419"]]
|
8
|
+
[1m[36m (0.7ms)[0m [1mcommit transaction[0m
|
9
|
+
Migrating to CreateUmsRoles (20131016015456)
|
10
|
+
[1m[35m (0.1ms)[0m begin transaction
|
11
|
+
[1m[36m (0.4ms)[0m [1mCREATE TABLE "ums_roles" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime) [0m
|
12
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131016015456"]]
|
13
|
+
[1m[36m (0.8ms)[0m [1mcommit transaction[0m
|
14
|
+
Migrating to CreateUmsUsers (20131016015833)
|
15
|
+
[1m[35m (0.1ms)[0m begin transaction
|
16
|
+
[1m[36m (1.0ms)[0m [1mCREATE TABLE "ums_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "email" varchar(255), "hashed_password" varchar(255), "salt" varchar(255), "last_login_time" datetime, "last_login_ip" varchar(255), "login_count" integer, "role_id" integer, "is_enabled" boolean, "created_at" datetime, "updated_at" datetime) [0m
|
17
|
+
[1m[35m (0.2ms)[0m CREATE INDEX "index_ums_users_on_role_id" ON "ums_users" ("role_id")
|
18
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131016015833"]]
|
19
|
+
[1m[35m (1.8ms)[0m commit transaction
|
20
|
+
Migrating to CreateUmsLogs (20131016020202)
|
21
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
22
|
+
[1m[35m (0.4ms)[0m CREATE TABLE "ums_logs" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "log_type" varchar(255), "level" varchar(255), "data" text, "ip" varchar(255), "created_at" datetime, "updated_at" datetime)
|
23
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131016020202"]]
|
24
|
+
[1m[35m (0.8ms)[0m commit transaction
|
25
|
+
Migrating to CreateUmsFunctionsRoles (20131016020423)
|
26
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
27
|
+
[1m[35m (0.5ms)[0m CREATE TABLE "ums_functions_roles" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "function_id" integer, "role_id" integer)
|
28
|
+
[1m[36m (0.2ms)[0m [1mCREATE INDEX "index_ums_functions_roles_on_function_id" ON "ums_functions_roles" ("function_id")[0m
|
29
|
+
[1m[35m (0.1ms)[0m CREATE INDEX "index_ums_functions_roles_on_role_id" ON "ums_functions_roles" ("role_id")
|
30
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131016020423"]]
|
31
|
+
[1m[35m (0.8ms)[0m commit transaction
|
32
|
+
Migrating to CreateUmsProductCategories (20131106063317)
|
33
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
34
|
+
[1m[35m (0.6ms)[0m CREATE TABLE "ums_product_categories" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "code" varchar(255), "picture" varchar(255), "created_at" datetime, "updated_at" datetime)
|
35
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106063317"]]
|
36
|
+
[1m[35m (1.0ms)[0m commit transaction
|
37
|
+
Migrating to CreateUmsProductColors (20131106063633)
|
38
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
39
|
+
[1m[35m (0.3ms)[0m CREATE TABLE "ums_product_colors" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
|
40
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106063633"]]
|
41
|
+
[1m[35m (0.8ms)[0m commit transaction
|
42
|
+
Migrating to CreateUmsProductMaterials (20131106063658)
|
43
|
+
[1m[36m (0.2ms)[0m [1mbegin transaction[0m
|
44
|
+
[1m[35m (0.7ms)[0m CREATE TABLE "ums_product_materials" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
|
45
|
+
[1m[36mSQL (0.3ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106063658"]]
|
46
|
+
[1m[35m (1.2ms)[0m commit transaction
|
47
|
+
Migrating to CreateUmsProductBrands (20131106063719)
|
48
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
49
|
+
[1m[35m (0.7ms)[0m CREATE TABLE "ums_product_brands" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
|
50
|
+
[1m[36mSQL (0.3ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106063719"]]
|
51
|
+
[1m[35m (0.8ms)[0m commit transaction
|
52
|
+
Migrating to CreateUmsProductSurfaces (20131106064312)
|
53
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
54
|
+
[1m[35m (0.4ms)[0m CREATE TABLE "ums_product_surfaces" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "code" varchar(255), "material" varchar(255), "color" varchar(255), "created_at" datetime, "updated_at" datetime)
|
55
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106064312"]]
|
56
|
+
[1m[35m (0.6ms)[0m commit transaction
|
57
|
+
Migrating to CreateUmsProductItems (20131106071449)
|
58
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
59
|
+
[1m[35m (0.7ms)[0m CREATE TABLE "ums_product_items" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "code" varchar(255), "category_id" integer, "material_id" integer, "length" integer, "width" integer, "height" integer, "depth" integer, "diameter" integer, "brand_id" integer, "stock_price" integer, "sell_price" integer, "description" text, "picture_id" integer, "created_at" datetime, "updated_at" datetime)
|
60
|
+
[1m[36m (0.2ms)[0m [1mCREATE INDEX "index_ums_product_items_on_category_id" ON "ums_product_items" ("category_id")[0m
|
61
|
+
[1m[35m (0.2ms)[0m CREATE INDEX "index_ums_product_items_on_material_id" ON "ums_product_items" ("material_id")
|
62
|
+
[1m[36m (0.2ms)[0m [1mCREATE INDEX "index_ums_product_items_on_brand_id" ON "ums_product_items" ("brand_id")[0m
|
63
|
+
[1m[35m (0.3ms)[0m CREATE INDEX "index_ums_product_items_on_picture_id" ON "ums_product_items" ("picture_id")
|
64
|
+
[1m[36mSQL (0.2ms)[0m [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m [["version", "20131106071449"]]
|
65
|
+
[1m[35m (1.4ms)[0m commit transaction
|
66
|
+
Migrating to CreateUmsProductPictrues (20131106071729)
|
67
|
+
[1m[36m (0.2ms)[0m [1mbegin transaction[0m
|
68
|
+
[1m[35m (0.8ms)[0m CREATE TABLE "ums_product_pictrues" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "item_id" integer, "path" varchar(255), "description" text, "created_at" datetime, "updated_at" datetime)
|
69
|
+
[1m[36m (0.3ms)[0m [1mCREATE INDEX "index_ums_product_pictrues_on_item_id" ON "ums_product_pictrues" ("item_id")[0m
|
70
|
+
[1m[35mSQL (0.2ms)[0m INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131106071729"]]
|
71
|
+
[1m[36m (0.9ms)[0m [1mcommit transaction[0m
|
72
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.2ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ums
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- wangfuhai
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -94,6 +94,7 @@ files:
|
|
94
94
|
- app/views/ums/users/new.html.erb
|
95
95
|
- app/views/ums/users/password.html.erb
|
96
96
|
- app/views/ums/users/profile.html.erb
|
97
|
+
- app/views/ums/users/welcome.html.erb
|
97
98
|
- config/routes.rb
|
98
99
|
- db/migrate/20131016015419_create_ums_functions.rb
|
99
100
|
- db/migrate/20131016015456_create_ums_roles.rb
|
@@ -133,6 +134,7 @@ files:
|
|
133
134
|
- test/dummy/config/locales/en.yml
|
134
135
|
- test/dummy/config/routes.rb
|
135
136
|
- test/dummy/config.ru
|
137
|
+
- test/dummy/log/development.log
|
136
138
|
- test/dummy/public/404.html
|
137
139
|
- test/dummy/public/422.html
|
138
140
|
- test/dummy/public/500.html
|
@@ -191,6 +193,7 @@ test_files:
|
|
191
193
|
- test/dummy/config/locales/en.yml
|
192
194
|
- test/dummy/config/routes.rb
|
193
195
|
- test/dummy/config.ru
|
196
|
+
- test/dummy/log/development.log
|
194
197
|
- test/dummy/public/404.html
|
195
198
|
- test/dummy/public/422.html
|
196
199
|
- test/dummy/public/500.html
|