Adaloにて動画のような、switchを押すとそれに対応した画像が表示されるアプリを作成しました。
これをswitch部分を管理者画面で押すと、利用者画面に画像が表示されるようにしたいです。
以下のようなイメージです。
スマホを2台用意し、それぞれ管理者、利用者でログインし、管理者と利用者の画面をそれぞれのスマホに表示させた状態で操作したいです。
ボタンを単純に管理者画面に移動させ、スマホ2台で確認したところ利用者画面に画像が表示されませんでした。
以下に設定を記載しました。間違えている箇所、良い方法がありましたら教えて頂けると幸いです。
↓DB設定



↓Switch設定
↓画像設定
管理者画面から、別のユーザーの設定(画像の表示/非表示)をいじりたいということですね。
利用者は複数人想定されているのかどうかわかりませんが、
一度、Userを選択するリストをあいだにかますと、
「Current User」が選択できるようになるので、
そこからCurrent User’s Switchを変更するというのでできそうな気がしますがいかがでしょうか?
イメージ以下です。
「いいね!」 1
@sawatari
ご回答ありがとうございます。
初歩的な質問で申し訳ありませんが、Userを選択するリストを間にかますとはどのような設定でしょうか。
Userとswitchesの関係は以下設定にしました。
DBを設定しましたが、Current userが表示されません、、、
Current userの具体的なやり方を教えていただけると幸いです。
@sawatari
何度も申し訳ありません。
switchをどのように使うのかが分からず、迷走しております、、、
ユーザーリストを作って、現在ログインしているユーザーを分かるようにし(=これがCurrent user?)、管理者画面のボタンに変更したいCurrent user画面を指定し、利用者画面の画像を変更するようなイメージなのでしょうか。
その中でのswitchの使い方、繋がりが分かっておりません。
もし宜しければ、データ間の繋がりをしりたいので、テストアプリを共有いただけないでしょうか。
失礼にあたった場合大変申し訳ありませんが、よろしくお願いいたします。
お返事遅くなりました。
実際に作ってみました。
こんな感じでどうでしょうか?
管理者ログイン
admin@test.com / pass
利用者ログイン
user@test.com / pass
先ほどお送りしたDB設計はちょっとややこしくなってしまっていたので、以下のようにシンプルに修正しています。
User Listという画面でユーザーのリストを表示させ、
リストのClick ActionでSettingの画面にLinkさせてあげることで、
Settingの画面で「Current User」(つまりリスト上で選択したユーザー)
のデータをいじることができるようになります。
こんな感じです。
ちなみに、「管理画面へ」というボタンはSometime Visibleで管理者のメールアドレスでログインしているときだけ表示させるようにしています。
「いいね!」 3
@sawatari
ご回答ありがとうございます。
頂いたアプリを管理者と利用者を別々のスマホでログインして、管理者画面を開いたスマホからボタンをONにしたりOFFにしたりしましたが、利用者画面の画像に変化がありませんでした。
リフレッシュが必要なのかと思い、利用者、管理者画面それぞれリロードしましたが、変化がありませんでした。
↓利用者画面を開いたところこの状態から変化がありません。
↓管理者画面でswitchを押しました。
sawatariさんでできていると思うので、私のやり方が悪いと思うのですが、このやり方で利用者画面が変更されるであっていますでしょうか。
あれ、こちらではできたのですが。。
確認ですが、User listの画面で、利用者の方のアドレス(user@test.com)の方を選択してもらってますか?
@sawatari
User listの画面で、利用者の方のアドレス(user@test.com)の方を選択したらできました!ありがとうございます。
いただいた設定画像を元に進めてみます!
「いいね!」 1
@sawatari
追加で質問させていただきたいです。
こちらをリロード操作なしで、自動で利用者画面の画像を管理者画面の指示通り変更する方法はありますでしょうか。
管理者画面のボタンのON OFFの情報を定期的に利用者画面が取得しに行き、自動でリロードする機能があればいいのですが、、、
できたとのことでよかったです!
何の操作もなく、リアルタイムで同期は難しい気がします。
どういう利用を想定されているのかわかりませんが、
常にその画面を開いているわけでなければ、
アプリを起動する度にはおそらく変更は適用されると思います。