dossier 2.4.0 → 2.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +28 -3
- data/app/views/dossier/reports/show.html.haml +1 -1
- data/config/routes.rb +1 -1
- data/lib/dossier/query.rb +1 -1
- data/lib/dossier/report.rb +4 -0
- data/lib/dossier/version.rb +1 -1
- data/lib/generators/dossier/views/templates/show.html.haml +21 -0
- data/lib/generators/dossier/views/views_generator.rb +12 -0
- data/spec/dossier/query_spec.rb +46 -27
- data/spec/dossier/report_spec.rb +19 -0
- data/spec/dummy/config/database.yml +1 -1
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/development.log +508 -28
- data/spec/dummy/log/test.log +879 -26190
- data/spec/dummy/tmp/cache/assets/C35/BF0/sprockets%2F64292e0008108df585a755f2876c7869 +0 -0
- data/spec/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
- data/spec/dummy/tmp/cache/assets/D00/EF0/sprockets%2F4e1e8b85785ee1929c8e355c96902e9c +0 -0
- data/spec/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/dummy/tmp/cache/assets/D45/6A0/sprockets%2F22f3562bf7d5e640880df2a5d683f2fc +0 -0
- data/spec/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/spec/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/spec/dummy/tmp/cache/assets/DCF/420/sprockets%2F9f127ea0ab7236994d1ceaa7bbea86c8 +0 -0
- data/spec/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/fixtures/db/mysql2.yml +2 -2
- data/spec/generators/dossier/views/views_spec.rb +25 -0
- data/spec/spec_helper.rb +1 -0
- data/spec/support/factory.rb +2 -2
- metadata +55 -15
data/README.markdown
CHANGED
@@ -5,7 +5,7 @@ Dossier is a Rails engine that turns SQL into reports. Reports can be easily ren
|
|
5
5
|
- If you **hate** SQL, you can use whatever tool you like to generate it; for example, ActiveRecord's `to_sql`.
|
6
6
|
- If you **love** SQL, you can use every feature your database supports.
|
7
7
|
|
8
|
-
[![Code Climate](https://codeclimate.com/
|
8
|
+
[![Code Climate](https://codeclimate.com/github/adamhunter/dossier.png)](https://codeclimate.com/github/adamhunter/dossier)
|
9
9
|
|
10
10
|
## Setup
|
11
11
|
|
@@ -47,7 +47,7 @@ class FancyKetchupReport < Dossier::Report
|
|
47
47
|
end
|
48
48
|
```
|
49
49
|
|
50
|
-
If you need dynamic values that may be influenced by the user, **[do not interpolate them directly](http://xkcd.com/327/)**. Dossier provides a safer way to add them: any symbols in the query will be replaced by calling methods of the same name in the report. Return values will be **escaped by the database connection**. Arrays will have all of their contents escaped, joined with a "," and wrapped in parentheses.
|
50
|
+
If you need dynamic values that may be influenced by the user, **[do not interpolate them directly](http://xkcd.com/327/)**. Dossier provides a safer way to add them: any lowercase symbols in the query will be replaced by calling methods of the same name in the report. Return values will be **escaped by the database connection**. Arrays will have all of their contents escaped, joined with a "," and wrapped in parentheses.
|
51
51
|
|
52
52
|
```ruby
|
53
53
|
# app/reports/fancy_ketchup_report.rb
|
@@ -67,6 +67,22 @@ class FancyKetchupReport < Dossier::Report
|
|
67
67
|
end
|
68
68
|
```
|
69
69
|
|
70
|
+
## Header Formatting
|
71
|
+
|
72
|
+
By default, headers are generated by calling `titleize` on the column name from the result set. To override this, define a `format_header` method in your report that returns what you want. For example:
|
73
|
+
|
74
|
+
```ruby
|
75
|
+
class ProductMarginReport < Dossier::Report
|
76
|
+
# ...
|
77
|
+
def format_header(column_name)
|
78
|
+
{
|
79
|
+
'margin_percentage' => 'Margin %',
|
80
|
+
'absolute_margin' => 'Margin $'
|
81
|
+
}[column_name.to_s] || super
|
82
|
+
end
|
83
|
+
end
|
84
|
+
```
|
85
|
+
|
70
86
|
## Column Formatting
|
71
87
|
|
72
88
|
You can format any values in your results by defining a `format_` method for that column on your report class. For instance, to reverse the names of your employees:
|
@@ -141,7 +157,16 @@ However, Dossier does support one URL parameter natively: if you supply a `foote
|
|
141
157
|
|
142
158
|
## Additional View Customization
|
143
159
|
|
144
|
-
To further customize your results view,
|
160
|
+
To further customize your results view, run the the generator provided. The default will provide 'app/views/dossier/reports/show'.
|
161
|
+
|
162
|
+
```ruby
|
163
|
+
rails generate dossier:views
|
164
|
+
```
|
165
|
+
You may pass a filename as an argument. This example creates 'app/views/dossier/reports/account_tracker.html.haml'.
|
166
|
+
|
167
|
+
```ruby
|
168
|
+
rails generate dossier:views account_tracker
|
169
|
+
```
|
145
170
|
|
146
171
|
## Callbacks
|
147
172
|
|
data/config/routes.rb
CHANGED
data/lib/dossier/query.rb
CHANGED
data/lib/dossier/report.rb
CHANGED
data/lib/dossier/version.rb
CHANGED
@@ -0,0 +1,21 @@
|
|
1
|
+
%h1= report.class.name.titleize
|
2
|
+
|
3
|
+
= link_to 'Download CSV', dossier_report_path(format: 'csv', options: report.options, report: report.class.report_name), class: 'download-csv'
|
4
|
+
|
5
|
+
%table
|
6
|
+
%thead
|
7
|
+
%tr
|
8
|
+
- report.results.headers.each do |header|
|
9
|
+
%th= Dossier::Formatter.titleize(header)
|
10
|
+
%tbody
|
11
|
+
- report.results.body.each do |row|
|
12
|
+
%tr
|
13
|
+
- row.each do |value|
|
14
|
+
%td= value
|
15
|
+
|
16
|
+
- if report.results.footers.any?
|
17
|
+
%tfoot
|
18
|
+
- report.results.footers.each do |row|
|
19
|
+
%tr
|
20
|
+
- row.each do |value|
|
21
|
+
%th= value
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Dossier
|
2
|
+
class ViewsGenerator < Rails::Generators::Base
|
3
|
+
desc "This generator creates report views"
|
4
|
+
source_root File.expand_path('../templates', __FILE__)
|
5
|
+
argument :report_name, type: :string, default: "show"
|
6
|
+
|
7
|
+
def generate_view
|
8
|
+
template "show.html.haml", Rails.root.join("app/" "views/" "dossier/reports/#{report_name}.html.haml")
|
9
|
+
end
|
10
|
+
|
11
|
+
end
|
12
|
+
end
|
data/spec/dossier/query_spec.rb
CHANGED
@@ -12,48 +12,67 @@ describe Dossier::Query do
|
|
12
12
|
|
13
13
|
describe "replacing symbols by calling methods of the same name" do
|
14
14
|
|
15
|
-
context "when
|
15
|
+
context "when it's a normal symbol match" do
|
16
16
|
|
17
|
-
|
18
|
-
report.stub(:sql).and_return("SELECT * FROM employees WHERE id = :id OR girth < :girth OR name = :name")
|
19
|
-
report.stub(:id).and_return(92)
|
20
|
-
report.stub(:girth).and_return(3.14)
|
21
|
-
report.stub(:name).and_return('Jimmy')
|
22
|
-
end
|
17
|
+
context "when the methods return single values" do
|
23
18
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
19
|
+
before :each do
|
20
|
+
report.stub(:sql).and_return("SELECT * FROM employees WHERE id = :id OR girth < :girth OR name = :name")
|
21
|
+
report.stub(:id).and_return(92)
|
22
|
+
report.stub(:girth).and_return(3.14)
|
23
|
+
report.stub(:name).and_return('Jimmy')
|
24
|
+
end
|
25
|
+
|
26
|
+
it "escapes the values" do
|
27
|
+
query.should_receive(:escape).with(92)
|
28
|
+
query.should_receive(:escape).with(3.14)
|
29
|
+
query.should_receive(:escape).with('Jimmy')
|
30
|
+
query.to_s
|
31
|
+
end
|
32
|
+
|
33
|
+
it "inserts the values" do
|
34
|
+
expect(query.to_s).to eq("SELECT * FROM employees WHERE id = 92 OR girth < 3.14 OR name = 'Jimmy'")
|
35
|
+
end
|
30
36
|
|
31
|
-
it "inserts the values" do
|
32
|
-
expect(query.to_s).to eq("SELECT * FROM employees WHERE id = 92 OR girth < 3.14 OR name = 'Jimmy'")
|
33
37
|
end
|
34
38
|
|
35
|
-
|
39
|
+
context "when the methods return arrays" do
|
36
40
|
|
37
|
-
|
41
|
+
before :each do
|
42
|
+
report.stub(:sql).and_return("SELECT * FROM employees WHERE stuff IN :stuff")
|
43
|
+
report.stub(:stuff).and_return([38, 'blue', 'mandible', 2])
|
44
|
+
end
|
38
45
|
|
39
|
-
|
40
|
-
|
41
|
-
|
46
|
+
it "escapes each value in the array" do
|
47
|
+
Dossier.client.should_receive(:escape).with(38)
|
48
|
+
Dossier.client.should_receive(:escape).with('blue')
|
49
|
+
Dossier.client.should_receive(:escape).with('mandible')
|
50
|
+
Dossier.client.should_receive(:escape).with(2)
|
51
|
+
query.to_s
|
52
|
+
end
|
53
|
+
|
54
|
+
it "joins the return values with commas" do
|
55
|
+
expect(query.to_s).to eq("SELECT * FROM employees WHERE stuff IN (38, 'blue', 'mandible', 2)")
|
56
|
+
end
|
42
57
|
end
|
58
|
+
end
|
59
|
+
|
60
|
+
context "when it's another string that includes :" do
|
43
61
|
|
44
|
-
it "
|
45
|
-
|
46
|
-
|
47
|
-
Dossier.client.should_receive(:escape).with('mandible')
|
48
|
-
Dossier.client.should_receive(:escape).with(2)
|
62
|
+
it "does not escape a namespaced constant" do
|
63
|
+
report.stub(:sql).and_return("SELECT * FROM employees WHERE type = 'Foo::Bar'")
|
64
|
+
query.should_not_receive(:Bar)
|
49
65
|
query.to_s
|
50
66
|
end
|
51
67
|
|
52
|
-
it "
|
53
|
-
|
68
|
+
it "does not escape a top-level constant" do
|
69
|
+
report.stub(:sql).and_return("SELECT * FROM employees WHERE type = '::Foo'")
|
70
|
+
query.should_not_receive(:Foo)
|
71
|
+
query.to_s
|
54
72
|
end
|
55
73
|
|
56
74
|
end
|
57
75
|
|
58
76
|
end
|
77
|
+
|
59
78
|
end
|
data/spec/dossier/report_spec.rb
CHANGED
@@ -9,10 +9,29 @@ describe Dossier::Report do
|
|
9
9
|
end
|
10
10
|
|
11
11
|
describe "report instances" do
|
12
|
+
let(:report_with_custom_header) do
|
13
|
+
Class.new(Dossier::Report) do
|
14
|
+
def format_header(header)
|
15
|
+
{
|
16
|
+
'generic' => 'customized'
|
17
|
+
}[header.to_s] || super
|
18
|
+
end
|
19
|
+
end.new
|
20
|
+
end
|
21
|
+
|
12
22
|
it "takes options when initializing" do
|
13
23
|
report = TestReport.new(:foo => 'bar')
|
14
24
|
report.options.should eq('foo' => 'bar')
|
15
25
|
end
|
26
|
+
|
27
|
+
it 'generates column headers' do
|
28
|
+
report = TestReport.new(:foo => 'bar')
|
29
|
+
report.format_header('Foo').should eq 'Foo'
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'allows for column header customization' do
|
33
|
+
report_with_custom_header.format_header(:generic).should eq 'customized'
|
34
|
+
end
|
16
35
|
end
|
17
36
|
|
18
37
|
describe "callbacks" do
|
data/spec/dummy/db/test.sqlite3
CHANGED
Binary file
|
@@ -1,33 +1,513 @@
|
|
1
1
|
Connecting to database specified by database.yml
|
2
|
-
[1m[36m (45.0ms)[0m [1mCREATE TABLE `employees` (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255), `hired_on` date, `suspended` tinyint(1)) ENGINE=InnoDB[0m
|
3
|
-
[1m[35m (217.3ms)[0m CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB
|
4
|
-
[1m[36m (141.9ms)[0m [1mCREATE UNIQUE INDEX `unique_schema_migrations` ON `schema_migrations` (`version`)[0m
|
5
|
-
[1m[35m (0.2ms)[0m SELECT version FROM `schema_migrations`
|
6
|
-
[1m[36m (0.3ms)[0m [1mINSERT INTO `schema_migrations` (version) VALUES ('20130110141950')[0m
|
7
2
|
Connecting to database specified by database.yml
|
8
3
|
Connecting to database specified by database.yml
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
4
|
+
|
5
|
+
|
6
|
+
Started GET "/" for 127.0.0.1 at 2013-02-05 09:02:51 -0500
|
7
|
+
|
8
|
+
ActionController::RoutingError (No route matches [GET] "/"):
|
9
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
|
10
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
11
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
12
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
13
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
14
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
15
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
16
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
17
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
18
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
19
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
20
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
21
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
22
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
23
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
24
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
25
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
26
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
27
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
28
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
29
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
30
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
31
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
32
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
33
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
34
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
35
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
36
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
37
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
38
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
39
|
+
<internal:prelude>:10:in `synchronize'
|
40
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
41
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
42
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
43
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
44
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
45
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
46
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
47
|
+
|
48
|
+
|
49
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (1.2ms)
|
50
|
+
|
51
|
+
|
52
|
+
Started GET "/woo" for 127.0.0.1 at 2013-02-05 09:02:55 -0500
|
53
|
+
|
54
|
+
NoMethodError (undefined method `action' for SiteController:Class):
|
55
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:73:in `dispatch'
|
56
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:36:in `call'
|
57
|
+
journey (1.0.4) lib/journey/router.rb:68:in `block in call'
|
58
|
+
journey (1.0.4) lib/journey/router.rb:56:in `each'
|
59
|
+
journey (1.0.4) lib/journey/router.rb:56:in `call'
|
60
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:601:in `call'
|
61
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
|
62
|
+
rack (1.4.4) lib/rack/etag.rb:23:in `call'
|
63
|
+
rack (1.4.4) lib/rack/conditionalget.rb:25:in `call'
|
64
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/head.rb:14:in `call'
|
65
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
|
66
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/flash.rb:242:in `call'
|
67
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:210:in `context'
|
68
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:205:in `call'
|
69
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/cookies.rb:341:in `call'
|
70
|
+
activerecord (3.2.11) lib/active_record/query_cache.rb:64:in `call'
|
71
|
+
activerecord (3.2.11) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
|
72
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
|
73
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `_run__3036648868073490833__call__700523775367203622__callbacks'
|
74
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `__run_callback'
|
75
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
|
76
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:81:in `run_callbacks'
|
77
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
|
78
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/reloader.rb:65:in `call'
|
79
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
|
80
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
|
81
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
82
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
83
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
84
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
85
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
86
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
87
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
88
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
89
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
90
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
91
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
92
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
93
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
94
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
95
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
96
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
97
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
98
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
99
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
100
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
101
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
102
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
103
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
104
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
105
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
106
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
107
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
108
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
109
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
110
|
+
<internal:prelude>:10:in `synchronize'
|
111
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
112
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
113
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
114
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
115
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
116
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
117
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
118
|
+
|
119
|
+
|
120
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.7ms)
|
121
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (3.8ms)
|
122
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (18.0ms)
|
123
|
+
|
124
|
+
|
125
|
+
Started GET "/woo" for 127.0.0.1 at 2013-02-05 09:03:20 -0500
|
126
|
+
Processing by SiteController#index as HTML
|
127
|
+
Rendered text template (0.0ms)
|
128
|
+
Completed 200 OK in 4ms (Views: 3.2ms | ActiveRecord: 0.0ms)
|
129
|
+
|
130
|
+
|
131
|
+
Started GET "/employee_with_custom_controller" for 127.0.0.1 at 2013-02-05 09:03:27 -0500
|
132
|
+
|
133
|
+
ActionController::RoutingError (No route matches [GET] "/employee_with_custom_controller"):
|
134
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
|
135
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
136
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
137
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
138
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
139
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
140
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
141
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
142
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
143
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
144
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
145
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
146
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
147
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
148
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
149
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
150
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
151
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
152
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
153
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
154
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
155
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
156
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
157
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
158
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
159
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
160
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
161
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
162
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
163
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
164
|
+
<internal:prelude>:10:in `synchronize'
|
165
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
166
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
167
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
168
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
169
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
170
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
171
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
172
|
+
|
173
|
+
|
174
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (0.9ms)
|
175
|
+
|
176
|
+
|
177
|
+
Started GET "/employee_report_with_custom_controller" for 127.0.0.1 at 2013-02-05 09:03:37 -0500
|
178
|
+
|
179
|
+
ActionController::RoutingError (No route matches [GET] "/employee_report_with_custom_controller"):
|
180
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
|
181
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
182
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
183
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
184
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
185
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
186
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
187
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
188
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
189
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
190
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
191
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
192
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
193
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
194
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
195
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
196
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
197
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
198
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
199
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
200
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
201
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
202
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
203
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
204
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
205
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
206
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
207
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
208
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
209
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
210
|
+
<internal:prelude>:10:in `synchronize'
|
211
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
212
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
213
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
214
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
215
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
216
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
217
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
218
|
+
|
219
|
+
|
220
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (0.6ms)
|
221
|
+
|
222
|
+
|
223
|
+
Started GET "/employee_report_custom_controller" for 127.0.0.1 at 2013-02-05 09:03:44 -0500
|
224
|
+
Processing by SiteController#report as HTML
|
225
|
+
Completed 500 Internal Server Error in 2ms
|
226
|
+
|
227
|
+
NameError (uninitialized constant SiteController::EmployeeReport):
|
228
|
+
app/controllers/site_controller.rb:7:in `report'
|
229
|
+
|
230
|
+
|
231
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.4ms)
|
232
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (1.3ms)
|
233
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (10.8ms)
|
234
|
+
|
235
|
+
|
236
|
+
Started GET "/employee_report_custom_controller" for 127.0.0.1 at 2013-02-05 09:04:26 -0500
|
237
|
+
|
238
|
+
LoadError (cannot load such file -- /Users/adamhunter/Studio/adamhunter/dossier/spec/support/reports/employee_report.rb):
|
239
|
+
app/controllers/site_controller.rb:1:in `<top (required)>'
|
240
|
+
|
241
|
+
|
242
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.1ms)
|
243
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms)
|
244
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (7.4ms)
|
245
|
+
|
246
|
+
|
247
|
+
Started GET "/employee_report_custom_controller" for 127.0.0.1 at 2013-02-05 09:05:39 -0500
|
248
|
+
Processing by SiteController#report as HTML
|
249
|
+
[1m[36mEmployeeReport (0.3ms)[0m [1mSELECT * FROM employees WHERE 1=1
|
250
|
+
ORDER BY name ASC[0m
|
251
|
+
Rendered /Users/adamhunter/Studio/adamhunter/dossier/app/views/dossier/reports/show.html.haml within layouts/application (12.0ms)
|
252
|
+
Completed 500 Internal Server Error in 23ms
|
253
|
+
|
254
|
+
ActionController::RoutingError (No route matches {:controller=>"dossier/reports", :action=>"show", :format=>"csv", :options=>nil}):
|
255
|
+
app/controllers/site_controller.rb:10:in `report'
|
256
|
+
|
257
|
+
|
258
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (0.5ms)
|
259
|
+
|
260
|
+
|
261
|
+
Started GET "/employee_report_custom_controller" for 127.0.0.1 at 2013-02-05 09:06:14 -0500
|
262
|
+
Processing by SiteController#report as HTML
|
263
|
+
[1m[35mEmployeeReport (0.3ms)[0m SELECT * FROM employees WHERE 1=1
|
264
|
+
ORDER BY name ASC
|
265
|
+
Rendered /Users/adamhunter/Studio/adamhunter/dossier/app/views/dossier/reports/show.html.haml within layouts/application (4.7ms)
|
266
|
+
Compiled application.css (0ms) (pid 28859)
|
267
|
+
Compiled jquery.js (23ms) (pid 28859)
|
268
|
+
Compiled jquery_ujs.js (0ms) (pid 28859)
|
269
|
+
Compiled application.js (48ms) (pid 28859)
|
270
|
+
Completed 200 OK in 112ms (Views: 111.2ms | ActiveRecord: 0.3ms)
|
271
|
+
|
272
|
+
|
273
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2013-02-05 09:06:15 -0500
|
274
|
+
Served asset /application.css - 200 OK (4ms)
|
275
|
+
|
276
|
+
|
277
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2013-02-05 09:06:15 -0500
|
278
|
+
Served asset /application.js - 200 OK (5ms)
|
279
|
+
|
280
|
+
|
281
|
+
Started GET "/assets/jquery_ujs.js?body=1" for 127.0.0.1 at 2013-02-05 09:06:15 -0500
|
282
|
+
Served asset /jquery_ujs.js - 200 OK (3ms)
|
32
283
|
Connecting to database specified by database.yml
|
33
284
|
Connecting to database specified by database.yml
|
285
|
+
|
286
|
+
|
287
|
+
Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2013-02-05 09:06:15 -0500
|
288
|
+
Served asset /jquery.js - 200 OK (3ms)
|
289
|
+
|
290
|
+
|
291
|
+
Started GET "/reports/employee.csv" for 127.0.0.1 at 2013-02-05 09:06:20 -0500
|
292
|
+
Processing by Dossier::ReportsController#show as CSV
|
293
|
+
Parameters: {"report"=>"employee"}
|
294
|
+
Completed 500 Internal Server Error in 1ms
|
295
|
+
|
296
|
+
NameError (uninitialized constant EmployeeReport):
|
297
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:230:in `block in constantize'
|
298
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:229:in `each'
|
299
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:229:in `constantize'
|
300
|
+
activesupport (3.2.11) lib/active_support/core_ext/string/inflections.rb:54:in `constantize'
|
301
|
+
/Users/adamhunter/Studio/adamhunter/dossier/lib/dossier.rb:26:in `name_to_class'
|
302
|
+
/Users/adamhunter/Studio/adamhunter/dossier/app/controllers/dossier/reports_controller.rb:35:in `report_class'
|
303
|
+
/Users/adamhunter/Studio/adamhunter/dossier/app/controllers/dossier/reports_controller.rb:4:in `show'
|
304
|
+
actionpack (3.2.11) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
|
305
|
+
actionpack (3.2.11) lib/abstract_controller/base.rb:167:in `process_action'
|
306
|
+
actionpack (3.2.11) lib/action_controller/metal/rendering.rb:10:in `process_action'
|
307
|
+
actionpack (3.2.11) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
|
308
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:414:in `_run__3560204119445928208__process_action__2105358548339878917__callbacks'
|
309
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `__run_callback'
|
310
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
|
311
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:81:in `run_callbacks'
|
312
|
+
actionpack (3.2.11) lib/abstract_controller/callbacks.rb:17:in `process_action'
|
313
|
+
actionpack (3.2.11) lib/action_controller/metal/rescue.rb:29:in `process_action'
|
314
|
+
actionpack (3.2.11) lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
|
315
|
+
activesupport (3.2.11) lib/active_support/notifications.rb:123:in `block in instrument'
|
316
|
+
activesupport (3.2.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
|
317
|
+
activesupport (3.2.11) lib/active_support/notifications.rb:123:in `instrument'
|
318
|
+
actionpack (3.2.11) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
|
319
|
+
actionpack (3.2.11) lib/action_controller/metal/params_wrapper.rb:207:in `process_action'
|
320
|
+
activerecord (3.2.11) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
|
321
|
+
actionpack (3.2.11) lib/abstract_controller/base.rb:121:in `process'
|
322
|
+
actionpack (3.2.11) lib/abstract_controller/rendering.rb:45:in `process'
|
323
|
+
actionpack (3.2.11) lib/action_controller/metal.rb:203:in `dispatch'
|
324
|
+
actionpack (3.2.11) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
|
325
|
+
actionpack (3.2.11) lib/action_controller/metal.rb:246:in `block in action'
|
326
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:73:in `call'
|
327
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:73:in `dispatch'
|
328
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:36:in `call'
|
329
|
+
journey (1.0.4) lib/journey/router.rb:68:in `block in call'
|
330
|
+
journey (1.0.4) lib/journey/router.rb:56:in `each'
|
331
|
+
journey (1.0.4) lib/journey/router.rb:56:in `call'
|
332
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:601:in `call'
|
333
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
|
334
|
+
rack (1.4.4) lib/rack/etag.rb:23:in `call'
|
335
|
+
rack (1.4.4) lib/rack/conditionalget.rb:25:in `call'
|
336
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/head.rb:14:in `call'
|
337
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
|
338
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/flash.rb:242:in `call'
|
339
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:210:in `context'
|
340
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:205:in `call'
|
341
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/cookies.rb:341:in `call'
|
342
|
+
activerecord (3.2.11) lib/active_record/query_cache.rb:64:in `call'
|
343
|
+
activerecord (3.2.11) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
|
344
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
|
345
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `_run__3036648868073490833__call__700523775367203622__callbacks'
|
346
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `__run_callback'
|
347
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
|
348
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:81:in `run_callbacks'
|
349
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
|
350
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/reloader.rb:65:in `call'
|
351
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
|
352
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
|
353
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
354
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
355
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
356
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
357
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
358
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
359
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
360
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
361
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
362
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
363
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
364
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
365
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
366
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
367
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
368
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
369
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
370
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
371
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
372
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
373
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
374
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
375
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
376
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
377
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
378
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
379
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
380
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
381
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
382
|
+
<internal:prelude>:10:in `synchronize'
|
383
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
384
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
385
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
386
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
387
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
388
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
389
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
390
|
+
|
391
|
+
|
392
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.1ms)
|
393
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.9ms)
|
394
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (7.5ms)
|
395
|
+
|
396
|
+
|
397
|
+
Started GET "/reports/employee.csv" for 127.0.0.1 at 2013-02-05 09:06:30 -0500
|
398
|
+
Processing by Dossier::ReportsController#show as CSV
|
399
|
+
Parameters: {"report"=>"employee"}
|
400
|
+
Completed 500 Internal Server Error in 1ms
|
401
|
+
|
402
|
+
NameError (uninitialized constant EmployeeReport):
|
403
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:230:in `block in constantize'
|
404
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:229:in `each'
|
405
|
+
activesupport (3.2.11) lib/active_support/inflector/methods.rb:229:in `constantize'
|
406
|
+
activesupport (3.2.11) lib/active_support/core_ext/string/inflections.rb:54:in `constantize'
|
407
|
+
/Users/adamhunter/Studio/adamhunter/dossier/lib/dossier.rb:26:in `name_to_class'
|
408
|
+
/Users/adamhunter/Studio/adamhunter/dossier/app/controllers/dossier/reports_controller.rb:35:in `report_class'
|
409
|
+
/Users/adamhunter/Studio/adamhunter/dossier/app/controllers/dossier/reports_controller.rb:4:in `show'
|
410
|
+
actionpack (3.2.11) lib/action_controller/metal/implicit_render.rb:4:in `send_action'
|
411
|
+
actionpack (3.2.11) lib/abstract_controller/base.rb:167:in `process_action'
|
412
|
+
actionpack (3.2.11) lib/action_controller/metal/rendering.rb:10:in `process_action'
|
413
|
+
actionpack (3.2.11) lib/abstract_controller/callbacks.rb:18:in `block in process_action'
|
414
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:414:in `_run__3560204119445928208__process_action__2105358548339878917__callbacks'
|
415
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `__run_callback'
|
416
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:385:in `_run_process_action_callbacks'
|
417
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:81:in `run_callbacks'
|
418
|
+
actionpack (3.2.11) lib/abstract_controller/callbacks.rb:17:in `process_action'
|
419
|
+
actionpack (3.2.11) lib/action_controller/metal/rescue.rb:29:in `process_action'
|
420
|
+
actionpack (3.2.11) lib/action_controller/metal/instrumentation.rb:30:in `block in process_action'
|
421
|
+
activesupport (3.2.11) lib/active_support/notifications.rb:123:in `block in instrument'
|
422
|
+
activesupport (3.2.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
|
423
|
+
activesupport (3.2.11) lib/active_support/notifications.rb:123:in `instrument'
|
424
|
+
actionpack (3.2.11) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
|
425
|
+
actionpack (3.2.11) lib/action_controller/metal/params_wrapper.rb:207:in `process_action'
|
426
|
+
activerecord (3.2.11) lib/active_record/railties/controller_runtime.rb:18:in `process_action'
|
427
|
+
actionpack (3.2.11) lib/abstract_controller/base.rb:121:in `process'
|
428
|
+
actionpack (3.2.11) lib/abstract_controller/rendering.rb:45:in `process'
|
429
|
+
actionpack (3.2.11) lib/action_controller/metal.rb:203:in `dispatch'
|
430
|
+
actionpack (3.2.11) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
|
431
|
+
actionpack (3.2.11) lib/action_controller/metal.rb:246:in `block in action'
|
432
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:73:in `call'
|
433
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:73:in `dispatch'
|
434
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:36:in `call'
|
435
|
+
journey (1.0.4) lib/journey/router.rb:68:in `block in call'
|
436
|
+
journey (1.0.4) lib/journey/router.rb:56:in `each'
|
437
|
+
journey (1.0.4) lib/journey/router.rb:56:in `call'
|
438
|
+
actionpack (3.2.11) lib/action_dispatch/routing/route_set.rb:601:in `call'
|
439
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
|
440
|
+
rack (1.4.4) lib/rack/etag.rb:23:in `call'
|
441
|
+
rack (1.4.4) lib/rack/conditionalget.rb:25:in `call'
|
442
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/head.rb:14:in `call'
|
443
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
|
444
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/flash.rb:242:in `call'
|
445
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:210:in `context'
|
446
|
+
rack (1.4.4) lib/rack/session/abstract/id.rb:205:in `call'
|
447
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/cookies.rb:341:in `call'
|
448
|
+
activerecord (3.2.11) lib/active_record/query_cache.rb:64:in `call'
|
449
|
+
activerecord (3.2.11) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
|
450
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
|
451
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `_run__3036648868073490833__call__700523775367203622__callbacks'
|
452
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:405:in `__run_callback'
|
453
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
|
454
|
+
activesupport (3.2.11) lib/active_support/callbacks.rb:81:in `run_callbacks'
|
455
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
|
456
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/reloader.rb:65:in `call'
|
457
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
|
458
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
|
459
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
|
460
|
+
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
|
461
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
|
462
|
+
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
|
463
|
+
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
|
464
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
|
465
|
+
rack (1.4.4) lib/rack/methodoverride.rb:21:in `call'
|
466
|
+
rack (1.4.4) lib/rack/runtime.rb:17:in `call'
|
467
|
+
activesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
468
|
+
rack (1.4.4) lib/rack/lock.rb:15:in `call'
|
469
|
+
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
|
470
|
+
railties (3.2.11) lib/rails/engine.rb:479:in `call'
|
471
|
+
railties (3.2.11) lib/rails/application.rb:223:in `call'
|
472
|
+
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
|
473
|
+
passenger (3.0.14) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request'
|
474
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:516:in `accept_and_process_next_request'
|
475
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop'
|
476
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:206:in `start_request_handler'
|
477
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:171:in `block in handle_spawn_application'
|
478
|
+
passenger (3.0.14) lib/phusion_passenger/utils.rb:470:in `safe_fork'
|
479
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:166:in `handle_spawn_application'
|
480
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
481
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
482
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:180:in `start'
|
483
|
+
passenger (3.0.14) lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
|
484
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
|
485
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
|
486
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
|
487
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
|
488
|
+
<internal:prelude>:10:in `synchronize'
|
489
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
|
490
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
|
491
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
|
492
|
+
passenger (3.0.14) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
|
493
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
|
494
|
+
passenger (3.0.14) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
|
495
|
+
passenger (3.0.14) helper-scripts/passenger-spawn-server:99:in `<main>'
|
496
|
+
|
497
|
+
|
498
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.2ms)
|
499
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms)
|
500
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (7.6ms)
|
501
|
+
|
502
|
+
|
503
|
+
Started GET "/employee_report_custom_controller" for 127.0.0.1 at 2013-02-05 09:09:20 -0500
|
504
|
+
Processing by SiteController#report as HTML
|
505
|
+
Completed 500 Internal Server Error in 2ms
|
506
|
+
|
507
|
+
NameError (uninitialized constant SiteController::EmployeeReport):
|
508
|
+
app/controllers/site_controller.rb:7:in `report'
|
509
|
+
|
510
|
+
|
511
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.0ms)
|
512
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms)
|
513
|
+
Rendered /Users/adamhunter/.rvm/gems/ruby-1.9.3-p194@dossier2/gems/actionpack-3.2.11/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (7.2ms)
|