Looks to me like the variable matrix is nil. Looks like it is called form line 
97.

I'm not familiar enough with controller_store or connection_store (are those 
from WebSockets gem?) to know what to tell you. Did you put a debugger above 
line 97 and try to figure out why  
controller_store["gomoku_guess#{connection_store[:game].id}"] appears to be nil?

>From am outsider's perspective, this is way too much logic in the controller. 
>Your controller actions should always try to be no more than 7 (maybe 8) lines 
>of code, and generally it is best to stick to REST pattern (although there are 
>exceptions).

I would move nearly all of your domain logic code into domain objects --- 
either model objects or plain-old-ruby-object (PORO) objects--- then write unit 
tests covering the interactions between the controllers & domain objects. That 
way you will have more isolated parts to work with so you can figure out where 
the problem is.

-Jason



On Sep 8, 2014, at 9:27 AM, Eugene Badin <[email protected]> wrote:

> Here is my controller
> https://gist.github.com/budkin/f02a5baed02e71a4f94f
> on line 182 it throws an error
> 
> 
> 
>> E [2014-09-08 18:36:07.171] [[31mDispatcher[0m] NoMethodError: undefined
> method `row_vectors' for nil:NilClass
>> E [2014-09-08 18:36:07.171] [[31mDispatcher[0m]
> /home/budkin/gamestown/app/controllers/games/gomoku_controller.rb:182:in
> `block in win?'
>> E [2014-09-08 18:36:07.172] [[31mDispatcher[0m]
> /home/budkin/gamestown/app/controllers/games/gomoku_controller.rb:181:in
> `times'
>> E [2014-09-08 18:36:07.172] [[31mDispatcher[0m]
> /home/budkin/gamestown/app/controllers/games/gomoku_controller.rb:181:in
> `win?'
>> E [2014-09-08 18:36:07.172] [[31mDispatcher[0m]
> /home/budkin/gamestown/app/controllers/games/gomoku_controller.rb:97:in
> `register_move'
> .
> .
> .
> 
> this means that
> `controller_store["gomoku_guess#{connection_store[:game].id}"]` invoked
> on line 97 is nil, but I'm sure that I did assign it Matrix on line 60.
> Why it changed? The interesting thing that this error doesn't happen on
> my local machine, only when someone connects to me and we play this game
> together
> 
> -- 
> Posted via http://www.ruby-forum.com/.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/rubyonrails-talk/fd90b267d0c405f42284297320331215%40ruby-forum.com.
> For more options, visit https://groups.google.com/d/optout.
> 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/80F40B7A-CC48-47DA-BFC6-9BD46CCF46B7%40datatravels.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to