→Ruby on Rails RubyによるWebアプリケーションフレームワーク RoR
Agile Web Development with Rails
10分で作るRailsアプリ for Windows http://masuidrive.jp/rails/
Ruby on Rails公式サイトの採用サイト紹介ページ http://wiki.rubyonrails.org/rails/pages/RealWorldUsage
この記事は第231回 Okinawa.rb MeetupでLTした内容を元にしています。発表の機会をいただき、ありがとうございました! Railsらしさ(Rails way)を学ぶ方法として以下のリポジトリが参考になるよ、という紹介記事です。 github.com きっかけ Ruby on Railsを久しぶり(Rails 5.2以来)に触ることになり、学び直しとして特に「Railsっぽさ」を知れるものを探していました。 そんな中見つけたのが前述の https://github.com/solid-process/rails-way-app です。 solid-process/rails-wa…
以前Rails7でTailwind CSSの導入をしましたが、今回はBootstrapを導入してみます。 esbuildを使用します。 プロジェクト作成時に導入する場合 1. rails new mofmof -j esbuild --css bootstrap でプロジェクトを作成する 2. 以下を package.json に追加する "scripts": { "build": "esbuild app/javascript/*.* --bundle --sourcemap --format=esm --outdir=app/assets/builds --public-path=/ass…
Rails の過去の脆弱性から勉強するシリーズ #4 github.com 修正コミット github.com 脆弱性の概要 SafeBuffer#bytesplice に XSS 脆弱性の可能性がある。 html_safe と SafeBuffer 出力する文字列がすでに検査済みで、追加で HTML エスケープする必要がなく安全というマークをつけるのが html_safe メソッド。Rails の view において暗黙的になされる HTML エスケープを回避するために利用することができる。HTML エスケープしない raw ヘルパーメソッドと同等なもの。 html_safe の実態はレシー…
今回はRailsのアソシエーションについて記載します。 アソシエーションとは? Railsでは、アソシエーションという機能が存在し、モデルとモデルを関連付けすることによって他モデルのデータも合わせて操作することができます。 例えば、userの投稿したpostを全件取得したい場合、アソシエーションの設定を行っていない場合には、whereメソッドを用いる必要があります。 user = User.find(1) posts = Post.where(user_id: user.id) これがアソシエーションの設定を行っていた場合、以下のように書くことができます。 user = User.find(1…
Rails の過去の脆弱性から勉強するシリーズ #3 github.com 修正コミット github.com 脆弱性の概要 contenteditable な要素に malicious HTML をペーストすることで DOM based XSS の可能性がある。 contenteditable に HTML そのままペーストできるの?レベルの理解度なのでそこらへんから確認していく。 contenteditable について developer.mozilla.org ユーザーによる要素の編集が可能になる属性。ただ普通に入力しても HTML 要素は挿入できない。 MDNのサンプルに入力してみた…
Stripe決済第四弾です。 今回はいままで実装したサブスクの解約を実装します。 サブスクの実装は以下の記事を参考にしてみてください。 www.mof-mof.co.jp 実装 ルーティングを追加します。 config/routes.rb resources :cancel, only: [:create] viewsに追記します。 app/viewa/plans/index.html.erb <%= button_to cancel_index_path, data: { turbo: false } do %> 解約 <% end %> コントローラーを作成します。 app/control…
Rails の過去の脆弱性から勉強するシリーズ #2 github.com 修正コミット github.com 脆弱性の概要 HTTP header で利用できる文字種は RFC で定義されている。 RFC 7230 - Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing 修正前のアプリケーションにおいては特段のチェックがなされていない。そのためユーザー入力を受け付けていた場合に Rails アプリケーション上では Location ヘッダーに利用できない文字を含めることができる。 一方 downstream s…
Rails の過去の脆弱性から勉強するシリーズ。 github.com 修正コミット github.com 脆弱性の概要 Rails には秘密鍵を credential ファイルへ編集・保存するための仕組みが含まれている。 railsguides.jp config/credentials.yml.encには暗号化された内容が書き込まれるが、 bin/rails credentials:edit と実行することで、これを復号化してエディタを開き、編集が完了すればまた暗号化した内容を書き出してくれる。 ただこの編集中の内容が同じシステム内にいる他ユーザーから読み取り可能になってしまっていたという…
今回はRailsでの中間テーブルについてまとめます。 中間テーブルは、多対多の関係を持つ2つのモデル間に配置されるテーブルのことを指します。これは、あるモデルと別のモデルの間に多対多の関係が存在する場合に使用されます。 今回は一例としてユーザーとタスクの関係を用いて説明します。 ユーザーは複数のタスクを担当でき、1つのタスクは複数のユーザーがアサインされている場合があるような多対多の関係を持つ2つのモデルという前提です。 テーブル設計 最初に、なぜ中間テーブルを作るのでしょうか? 中間テーブルは必ず作らないとエラーになるとかそんなことはありません。 ただし、中間テーブルを用いなければ非常に冗長…
Stripe決済第三弾です。 今回は前々回実装したサブスクと、前回実装した買い切りを組み合わせて複数のプランをユーザーが選択できるようにしてみます。 下準備は以下の記事を参考にしてみてください。 www.mof-mof.co.jp 決済を実装する 今回用意するプラン スタンダードプラン ¥100/月 ¥800/買い切り プレミアムプラン ¥1,000/月 ¥8,000/買い切り 料金を作成する こちら で料金を作成します。 前回までの記事を参考に商品と料金を作成します。 www.mof-mof.co.jp 商品カタログページを見て、以下のようになっていればOKです。 商品カタログページ プラン…
プログラミングスクール3ヶ月 はじめてアプリケーションをつくってみる 2024/9/27 Day6 大タスク-小タスク 昨日に続き、今日は大タスク-小タスクの紐付けの所を実装していく。 基本的には、昨日のやり方を真似る。 ただ、昨日のやり方で不要な部分がありそうだったので、都度調べながらやることにした。 mission_idsの値を操作したらよくね? 昨日のやり方では、複数のcheckboxのvalueのコレクション[mission_ids]とhidden_fieldの[orders]をリクエストで送っていました。 [mission_ids] プロジェクトに紐付けたい大タスクID(ID順) (…
2024/09/27分のコミットです。 CHANGELOGへの追加はありませんでした。 Preparing for 8.0.0.beta1 release 各gemのバージョンを8.0.0.beta1に更新しています。 Copy tools/releaser to devcontainer Docker image .devcontainer/Dockerfileの修正です。 tools/releaser/releaser.gemspecをdevcontainer用のDocker imageにコピーするよう修正しています。releaserが無いとbundle install実行時にエラーになっ…
開催情報稲毛海浜公園 芝生広場&護岸道路入場料 無料主催\t株式会社ワールドパーク公式instagram-https://www.instagram.com/dog_park_inage?igsh=MWc0dHVhajQ1YWM1OA== PET FESTA INAGE 開催決定! ペットと一緒に楽しめる最高の一日を過ごしませんか?稲毛海浜公園の芝生広場で、PET FESTA INAGEが開催されます! イベント内容 ペットグッズマーケット:おしゃれで便利なアイテムが大集合! フォトスポット:愛犬や愛猫と一緒に素敵な写真を撮影できるスポットが登場📸 フードトラック:美味しい食べ物やドリンクで一…
テレ東フリーク伊集院光と元テレ東の佐久間宣行がテレ東の番組をネタにトークする実験的番組!9月末で退社する池谷アナを送る!衝撃メッセージ&SPゲストも…!? 9月28日 土曜 11:03 -11:30 テレ東 出演者【MC】伊集院光 佐久間宣行 【進行】池谷実悠(テレビ東京アナウンサー) 【ゲスト】未定 ホームページhttps://www.tv-tokyo.co.jp/ijuinsakuma/ 【お知らせ】 お客様の安全面の確保・近隣交通状況に配慮し、 営業最終日での閉店セレモニーは実施致しません。 何卒、ご理解の程よろしくお願い致します。 【閉店のお知らせ】 9月29日(日)をもちまして 閉店…
板金職人やパティシェ、絵画アーティストなど手先の器用さに自信を持つ6名が集結!賞金を賭け番組が用意した難攻不落の4つのTESAKIゲームに挑む▼MC森崎ウィン 9月28日 土曜 12:15 -14:23 テレ東テレ東のお家芸ともいえる「素人参加型のコンペティション番組」!長年培ってきたノウハウを最大限に活かした新スタジオ・ゲーム・バラエティ! プルプル&イライラが止まらない白熱の指先バトルが展開する ステージ1【ティーアップ・ビーンズ】 箸で豆を掴み極細ストローの上に10個、極小のクギの上に1個を載せる早さを競う。 A組B組に分かれ戦い各組1名ずつが脱落。 ハイエナ・チャンスがプレイヤー達の運…
千原ジュニアが挑む!超過酷なガチンコ旅に甲子園のスター「怪物・松坂大輔」が参戦▼松坂引退秘話、初告白▼恐怖!終わらない峠越えに呆然▼絶品そば満喫!ゴールなるか? 9月28日 土曜 18:30 -20:54 テレ東 元メジャーリーガー「怪物・松坂大輔」が甲子園で激闘を演じた「上重聡」アナウンサーと共に超過酷なガチ旅初参戦!千原ジュニアのタクシー乗り継ぎ旅の第24弾はスゴイ事に! ▼松坂引退の理由…初告白! ▼立ちはだかる!北アルプス恐怖の峠越え ▼松坂感動!国宝の城&世界遺産! など… 今回は… つづき①長野県の上田城から富山県の世界遺産、五箇山・相倉合掌造り集落を目指すふれあい旅へ ルールは……
『昭和大好き博士ちゃん』が3人集結!バブル時代大好き博士ちゃん!ホーロー看板大好き博士ちゃん!そして時計大好き博士ちゃんは過去最難関の時計修理に挑む!! 9月28日 土曜 18:56 -20:54 テレビ朝日 『バブル時代大好き博士ちゃん』 バブル時代の全てを愛する博士ちゃんが“バブル期の豪華マンション”内見へ! 波のプールや露天風呂も!?豪華絢爛バブル期ならではの物件連発! 『ホーロー看板大好き博士ちゃん』 今も街に残る“ホーロー看板”を探し歩くだけでなく、収集までしている博士ちゃん!彼の部屋は圧巻の光景… 芦田愛菜もビックリ!?ホーロー看板から学べる昭和…ノスタルジー漂う博士ちゃんの授業!…
「祝 松戸市人口50万人到達記念 松戸まつりイン2024」が10月5日・6日、松戸駅(松戸市松戸)周辺と松戸中央公園(岩瀬)で開催される。(松戸経済新聞)松戸駅周辺で今年も「松戸まつり」 キャラクターショー、パレードなど(みんなの経済新聞ネットワーク) https://news.yahoo.co.jp/articles/2e5e858dadfad42f97d74adae20444c72c982d30 名バイプレイヤー・勝村政信とグルメドライブ!昭和レトロな喫茶店をハシゴ&江戸時代の風情が残る茅ぶきの店へ!北野武監督との㊙エピソードや懐かし漫画のクイズでバトル 9月28日 土曜 11:55 -1…
今年は2019年以来5年ぶりに、事前申込不要で当日はどなたでも自由にご入場いただけます。 また、今回は実際の車両を使用し、乗務員のお仕事や車両に搭載されている機器を紹介しながら行うクイズラリーや、普段は乗ることができないモーターカーにお乗りいただくことができる「モーターカー試乗体験」などの体験型イベントのほか、当社社員による「お仕事紹介」などの見学型イベントを実施いたします。 「第14回 東葉車両基地まつり」へ皆さまのご来場をお待ちしております。 【開催概要】 日 時:2024年9月28日(土)10:30~15:00(最終入場 14:00) 会 場:東葉高速鉄道 車両基地(東葉高速線 八千代緑…
★あのピカチュウがハリウッドで初の実写化★人間とポケモンが共存する街を舞台に、ピカチュウが事件の謎に挑む! 10月4日 金曜 21:00 -22:59 日テレ1 かつてポケモンが大好きな少年だったティムは、父親がポケモンに関わる事件の捜査に没頭していたことから、父とポケモンを遠ざけるようになっていた。ある日、父親が事故で亡くなったとの知らせを受けたティムはライムシティにある父の部屋へと向かう。そこに突然現れたのは人間の言葉を話す名探偵ピカチュウだった!父はまだ生きていると言うピカチュウと共に、ティムは街で起こる様々な事件の真相に迫ることに…! 出演者<名探偵ピカチュウ>ライアン・レイノルズ(西…
天が呼ぶ、地が呼ぶ、人が呼ぶ。悪を倒せと俺を呼ぶ! 10月4日 金曜 20:30 -20:57 TOKYO MX1デルザー軍団の大首領がその姿を現した。巨大な手足が7人の仮面ライダーを踏み潰し、投げ飛ばす。だが、7人ライダーは世界の平和のため、力を合わせて立ち向かう。 出演者【城茂】荒木茂 【岬ユリ子】岡田京子 【立花藤兵衛】小林昭二 【紳士タイタン】浜田晃 【ジェネラルシャドウの声】柴田秀勝 【大首領の声】納谷悟朗 【お知らせ】 お客様の安全面の確保・近隣交通状況に配慮し、 営業最終日での閉店セレモニーは実施致しません。 何卒、ご理解の程よろしくお願い致します。 【閉店のお知らせ】 9月29…
1979年の放送開始から45周年を迎えた、ウルトラマンシリーズ初のTVアニメ作品『ザ☆ウルトラマン』のHDリマスター版がTOKYO MXで地上波初放送! 10月4日 金曜 20:00 -20:30 TOKYO MX1地球防衛軍極東ゾーンの宇宙ステーションEGG3に勤務していた宇宙開発員のヒカリ超一郎は、地球に続発する怪奇現象の原因を解明するために結成された科学警備隊のメンバーにスカウトされる。任務に就くため地球へ赴くヒカリは、謎の赤い光と遭遇する。その中でヒカリが出会ったのは、「ウルトラマン」と名のる超人だった……。地球に続発する怪奇現象の原因を解明するため、地球防衛軍内に科学警備隊が結成され…
“肉のジモン”が完全スルーしていた取材拒否の超有名焼肉店についに初訪問▽あの完全取材拒否ラーメン店が代替わり…初解禁なるか!?▽幻の曜日限定カレーを求めて大阪へ 9月28日 土曜 1:55 -3:25 フジテレビ<フジバラナイト FRI> 出演者寺門ジモン スタッフ【企画】 赤池洋文 【ディレクター】 伊藤大地 【プロデューサー】 宮崎孝幸 【演出】 遠藤達也 【お知らせ】 お客様の安全面の確保・近隣交通状況に配慮し、 営業最終日での閉店セレモニーは実施致しません。 何卒、ご理解の程よろしくお願い致します。 【閉店のお知らせ】 9月29日(日)をもちまして 閉店させていただくことになりました。…
赤い花が散った。怒りに飲み込まれたデュークは、再びグレンダイザーを暴走させてしまう。デュークを殺さなければグレンダイザーは止まらないのか?甲児に選択の時が迫る。 9月28日 土曜 1:38 -2:08 テレ東 砂漠に堕ちた男には、記憶がない。男は兜甲児に拾われ、大介と名付けられた。 夢のクリーンエネルギー光子力により成した財で、大富豪と正義の味方、2つの顔を持つ甲児は、どこか陰があるも非凡な才能を持つ大介に信頼を寄せて行く。 穏やかな日々が続くと思われていた中、未確認空中現象が世界中の大都市上空に出現する。それは地球から遠く離れた星系より襲来したベガ星連合軍だった。地球の兵器を遥かに凌駕するベ…
映画人の「今」とその「想い」を伝えるドキュメンタリー。映画最新作が公開、さらにドラマも絶賛放送中の大人気シリーズ「ベイビーわるきゅーれ」の魅力を徹底解剖! 9月28日 土曜 0:57 -1:28 テレ東9月27日(金)から全国公開中の映画『ベイビーわるきゅーれ ナイスデイズ』、さらに毎週水曜日深夜1時〜放送中のドラマ『ベイビーわるきゅーれ エブリデイ!』。2024年秋を席巻する大人気シリーズを徹底解剖。主人公のちさと(髙石あかり)とまひろ(伊澤彩織)の織りなすオフビートな世界観と唯一無二のアクションはどのように構築されているのか。主要キャストと監督のインタビューを交えながら、その魅力に迫ってい…