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

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

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

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

Ruby on Rails

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

Q&A

解決済

2回答

1156閲覧

サイト管理ってifでいいの?

johnbeetz

総合スコア31

Ruby

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

Ruby on Rails

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

0グッド

0クリップ

投稿2016/10/25 12:21

編集2016/10/25 12:53

プログラミング初心者なので、的外れな質問かもしれませんが、よろしくお願いいたします。

質問:自分だけが商品データを追加できる場合、新たに商品データの追加をするときってどうするのですか?

  1. 自分だけがtrueのサイト管理者カラムを設ける
  2. if サイト管理者 で自分だけに商品編集linkが表示されるようにする
  3. 商品編集controllerにbefore_action等でアクセス制限する

が一般的なのですか?

それとも、まだサーバー構築やgitの勉強をしていないのですが、gitとサーバーを連携させてデータを追加させるのですか?

よろしくお願いいたします!

補足
今、練習がてらペットボトルのお茶を紹介するサイトを作っているのですが、新商品が発売された時ってどうするの?っという疑問から質問させていただきました。

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

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

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

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

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

guest

回答2

0

  1. 自分だけがtrueのサイト管理者カラムを設ける
  2. if サイト管理者 で自分だけに商品編集linkが表示されるようにする
  3. 商品編集controllerにbefore_action等でアクセス制限する

が一般的なのですか?

基本的にはその流れです。

問題はそれをどう実現するか、あなたがあなた自身である事をどう判断するかです。

しかし、このような仕組みはどのサイトでも組込まれる事が多い機能ですのでオープンソースのライブラリを使う事も可能です。

有名なところでは devisecancancan でしょうか。

投稿2016/10/25 12:43

hana-da

総合スコア1728

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

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

johnbeetz

2016/10/25 12:56

いつも助けて頂き、ありがとうございます! >>有名なところでは devise や cancancan でしょうか。 今、見てみます!
johnbeetz

2016/10/25 13:16

教えて頂きありがとうございます! 疑問なのですが、新商品が仮に100個出た時も一つ一つ商品登録しないといけないのですか? ide側から新商品100個を登録して、その結果をサイトに反映させる事も出来るのですか?
guest

0

ベストアンサー

商品データを追加等とありますが、ECサイト等の管理サイトで商品を追加する等のようなものですか?

もしそうであれば、
通常はデータベースにユーザーテーブルを作成し、認証機能を実装し、ログインしたものだけが管理サイトを利用できるような作りにする。管理サイトにログインできたもの全てが商品データ編集ができるので良いならここまで。

また管理サイトにログインできるユーザーの中でも商品データ追加は自分だけ(特定のユーザーだけ)しかできないようにするというのであれば、先ほどのユーザーテーブルにroleのようなカラムを追加し、ユーザー、ロールの概念が必要。

ロールは直訳すると役割、、なのでたとえば
ロールに例えばguest,staff,managerなど3種類を想定し、
ログインユーザーのロールがguestもしくはstaffのユーザーの場合は商品データ追加はできない(該当コントローラにアクセスできない)、ロールにmanagerがセットされているユーザーの時のみアクセス可にする
というような流れかな?と思います。

投稿2016/10/25 12:37

hiim

総合スコア1689

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

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

hiim

2016/10/25 12:45

git等と連携させて、、、等と書かれているので上記のような商品管理サイトを想定しているのとまったく別の質問だったならすいません・・・
johnbeetz

2016/10/25 12:52

回答ありがとうございます! 今、練習がてらペットボトルのお茶を紹介するサイトを作っているのですが、新商品が発売された時ってどうするの?っという疑問から質問させていただきました。 よろしくお願いいたします!
hiim

2016/10/25 13:02

そういう事ですね、それならば言語等関係なく概念的には大まかには先ほどの回答でOKかと思います。
johnbeetz

2016/10/25 13:16

教えて頂きありがとうございます! 疑問なのですが、新商品が仮に100個出た時も一つ一つ商品登録しないといけないのですか? ide側から新商品100個を登録して、その結果をサイトに反映させる事も出来るのですか?
hiim

2016/10/25 14:22 編集

例えばよくあるECサイトなどの商品登録は個別に1つづつ登録する方法と、CSVファイルなどのをアップロードして一括登録できる方法の両方実装しているサイトが多いと思います。 簡単の為すごく単純に商品テーブルのカラムを商品ID,商品名,商品説明の3カラム用意した場合、前者はフォームに商品名を入力するテキストボックス、商品説明を入力するテキストエリアを用意して入力&更新でDBにinsert、その時の商品IDをユニークに振る(pk)後者は商品名、商品説明のカラムを持つCSVファイルに希望するだけの商品数記入してアップロードしアップロードしたファイルをプログラム側で読み込んで商品数分insertが普通だと思います。 スマホでからのコメントなので読みにくいと思います、すいません(^◇^;)
johnbeetz

2016/10/26 13:50

とても分かりやすく説明して頂きありがとうございます! だいぶイメージしやすくなりました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問