質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Haml

Haml(HTML abstraction markup language)は、HTML/XHTMLを効率的に記述するためのマークアップ言語および記法です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

0回答

1169閲覧

【Rails】チャット機能のshowアクションの実装[ActionCable]

sho.tech

総合スコア0

Haml

Haml(HTML abstraction markup language)は、HTML/XHTMLを効率的に記述するためのマークアップ言語および記法です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2020/07/16 09:51

前提・実現したいこと

自作のWEBサイトにてチャット機能を導入したいです。
userとadmin間のチャット機能を実装中です。admin側からユーザー詳細ページにアクセスし、
メールアイコンからチャットルームに入室して、やり取りが出来るようにしたいです。
admin側はログイン状態、user側はログイン有無関係無くメッセージを受け付けられるようにしたいです。
下記サイトを参考にしています。

https://qiita.com/yuto_1014/items/249c93970780b498d86e

上記サイトではuser同士のやり取りですが、今回はuserとadmin間です。

発生している問題・エラーメッセージ

ユーザー詳細ページにリンク用のアイコンが表示されない。
エラーメッセージは表示されていません。
アイコン以外の情報は表示されています。

該当のソースコード

show.html.haml

.user-profile-header <プロフィール詳細> .profile = image_tag @user.image.url, alt: "NoImage" %br 【ユーザー名】 = @user.name %br 【性別】 = @user.sex %br 【出身地】 = @user.birth_place %br 【プロフィール】 = @user.profile -if user_signed_in? - unless @user.id == current_user.id - if @isRoom == true = link_to room_path(@roomId) do %button#dm_submit %i.fas.fa-envelope - else = form_for @room, url: rooms_path do |f| = fields_for @entry do |e| = e.hidden_field :user_id, :value=> @user.id %button#dm_submit{type="submit"} %i.fas.fa-envelope
class UsersController < ApplicationController def show @user = User.find(params[:id]) if user_signed_in? @currentUserEntry = Entry.where(user_id: current_user.id) @userEntry = Entry.where(user_id: @user.id) unless @user.id == current_user.id @currentUserEntry.each do |cu| @userEntry.each do |u| if cu.room_id == u.room_id then @isRoom = true @roomId = cu.room_id end end end unless @isRoom @room = Room.new @entry = Entry.new end end end end def edit end def update if current_user.update(user_params) redirect_to root_path else render :edit end end private def user_params params.require(:user).permit(:name, :birth_place, :birth_date, :profile, :image) end end
class AdminsController < ApplicationController def show if admin_signed_in? @currentAdminEntry = Entry.where(admin_id: current_admin.id) @adminEntry = Entry.where(admin_id: @admin.id) unless @admin.id == current_admin.id @currentAdminEntry.each do |cu| @adminEntry.each do |u| if cu.room_id == u.room_id then @isRoom = true @roomId = cu.room_id end end end unless @isRoom @room = Room.new @entry = Entry.new end end end end def edit end def update if current_admin.update(admin_params) redirect_to salontoppage_path else render :edit end end private def admin_params params.require(:admin).permit(:name, :category, :birth_place, :profile, :image) end end

userモデルを参考に、admin用に記載を追記しています。
プログラミング初心者にて、初投稿となります。ご教示のほど宜しくお願い致します。
※他に必要情報あれば教えてください。

補足情報(FW/ツールのバージョンなど)

rails 6.0.3.2
ruby 2.6.5
jquery-rails 4.4.0
haml-rails 2.0.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問