Group Chat with ActionCable: Part 1 Discussion
Can you post the block of modified navbar code that you inserted into application.html.erb? I wasn't able to catch all of it on the screen to see the changes made.
This was great Chris (edit sorry wrong name lol)! Thanks! I can't wait until you dive into the actual ActionCable. What is the ETA on the second episode?
Just published it! https://gorails.com/episode...
I'll be publishing about one a week so I have time to get through everything.
Hey im new to rails and still getting quite comfortable with Ruby. But I seen that version 5.0 of Rails is out. How do I upgrade/install it? Thanks!!
You can just run "gem install rails" and that should install Rails 5. I'll be doing a screencast on upgrading an existing app to Rails 5 pretty soon.
Thanks Chris, I was following building this awesome app, but at (Part-2 at 8:19) I got stuck by this error: Undefined method @chatroom_user = @chatroom.chatroom_users.where(user_id: current_user.id)
How can I fix it in order to continue the app?
Thanks in dvance
Hey Chris! I know I'm late to the party...haha! I found a way of adding custom fields with Devise that I like...
def configure_permitted_parameters
added_attrs = [:username, :email, :password, :password_confirmation, :remember_me]
devise_parameter_sanitizer.permit :sign_up, keys: added_attrs
devise_parameter_sanitizer.permit :account_update, keys: added_attrs
end
This makes it super easier to add additional fields in the future. Anyway, just a quick tip! :)
I like the added_attrs array. It's nice to reuse since I had always just defined the items in each place.
Hello Chris,
thank you for the tutorials. I was wondering if you could make a tutorial for setting up MacVim just like you have? I have tried myself, however, I can not seem to figure out how to do it.
Thanks,
That devise-bootstrapped gem is a time saver ;)
Thanks for the kind words! If you have any feedback for improvements feel free to hit up the github issues!
Hi, this is a great tutorial so far! However, i'm having some issues near the end. After I add the Devise permitted parameters to the application controller and I try to sign up, I can no longer access the site (even after refreshing and trying to go back to the main page. It gives me a NoMethodError in Chatrooms#index. It says "undefined method `public_channels' for #<activerecord::associations::collectionproxy []="">
Did you mean? public_send" and that the error is from application.html.erb. I replaced my code in that file with yours from the github repo, but i'm still getting the same error. Can someone please point me in the right direction? Thanks!
https://uploads.disquscdn.c...
Hey! I believe that should be just
><% current_user.chatrooms.each do |chatroom| %>
because we didn't build anything called "public_channels" I don't believe.
You can find that line in the github repo here: https://github.com/gorails-...
Hello @excid3:disqus
First of all wonderful tutorial. I have a question, please see if you can help out,
I have a question model and a conversation model, a student asks a question and based on that question a teacher chats with that student. Please note only one teacher and one student are allowed in conversation per question. A student can only ask one question per email address. Now we wanna introduce a live chat support system for our support team to be able to chat with students. Now this chat room should be unique to each question and any number of support users can be present but only one student. How should I go about creating models for chat room based on your tutorial?
weird. I keep on getting this error.
ereks-MacBook-Pro-4:slack.io DerekJLin$ rails s
=> Booting Puma
=> Rails 5.2.1 application starting in development
=> Run `rails server -h` for more startup options
Exiting
/Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/puma-3.12.0/lib/puma/launcher.rb:343:in `stat': No such file or directory @ rb_file_s_stat - /Users/DerekJLin/slack.io (Errno::ENOENT)
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/puma-3.12.0/lib/puma/launcher.rb:343:in `generate_restart_data'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/puma-3.12.0/lib/puma/launcher.rb:64:in `initialize'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/puma-3.12.0/lib/rack/handler/puma.rb:66:in `new'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/puma-3.12.0/lib/rack/handler/puma.rb:66:in `run'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/rack-2.0.5/lib/rack/server.rb:297:in `start'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/commands/server/server_command.rb:53:in `start'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/commands/server/server_command.rb:147:in `block in perform'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/commands/server/server_command.rb:142:in `tap'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/commands/server/server_command.rb:142:in `perform'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/thor-0.20.0/lib/thor/command.rb:27:in `run'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/thor-0.20.0/lib/thor.rb:387:in `dispatch'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/command/base.rb:65:in `perform'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/command.rb:46:in `invoke'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/railties-5.2.1/lib/rails/commands.rb:18:in `<main>'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in require_with_bootsnap_lfi'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:65:in `register'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:20:in `require_with_bootsnap_lfi'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:29:in `require'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `block in require'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:253:in `load_dependency'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/activesupport-5.2.1/lib/active_support/dependencies.rb:287:in `require'
from /Users/DerekJLin/Desktop/slack.io/bin/rails:9:in `<top (required)>'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/client.rb:30:in `run'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/bin/spring:49:in `<top (required)>'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load'
from /Users/DerekJLin/.rvm/gems/ruby-2.3.3/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>'
from /Users/DerekJLin/Desktop/slack.io/bin/spring:15:in `require'
from /Users/DerekJLin/Desktop/slack.io/bin/spring:15:in `<top (required)>'
from bin/rails:3:in `load'
from bin/rails:3:in `<main>'