gemについてまとめる
gemとは?
- 定義:Rubyプログラミング言語で使われるパッケージマネージャで、Ruby用のライブラリやプログラムを配布、管理するシステム。
- 用途:開発者がRubyのコードを簡単に共有、インストール、バージョン管理できるようにする。
- 使用方法:コマンドラインを使用して、「gem install [gem名]」のようにインストールします。
sinatraで使うgemはひたすらgem ほにゃらら=>bundle installを繰り返してました。
- インストール:gem install railsでRailsフレームワークをインストール。
- アップデート:gem updateでインストールされているすべてのgemを更新。
- アンインストール:gem uninstall [gem名]で特定のgemをアンインストール。
bundlerを使ってインストールしてた
Bundlerは、RubyGemsのパッケージマネージャとしての機能を強化し、プロジェクトの依存関係を管理するために使われます (Chatgptさんより)
特定のバージョンのgemに依存するプロジェクトでも、将来のバージョン変更による互換性の問題を防ぐことができます。
今回この理解が浅はかで何度もエラーで躓きました。
Gemfile.lock:bundle installコマンドを実行すると生成されるファイルで、 インストールされたgemの具体的なバージョンとその依存関係が記録されます。 これにより、他の開発者が同じプロジェクトをセットアップする際に、全く同じ環境を再現することができます。 (Chatgptさんより)
なるほどです。
bundlerの役割まとめ
- 依存関係の管理
- 一貫性の確保 =>開発、テスト、本番環境のすべてで同じバージョンのgemを使用することで環境間での動作の違いによるバグや問題を減らすことができる
- 簡単に更新・ロールバック
ロールバック => システムやアプリケーションの状態を以前の状態に戻す操作やプロセスのこと
なるほどなるほど。
使ったgem色々
データベースを使った簡単なwebアプリを作りたいと考えてます。 なので今のところ使ったgemについて自分用にまとめる。
webrick
Ruby標準ライブラリのHTTPサーバーで、簡単なWebアプリケーションやAPIの開発、テストに使用されます。軽量で組み込み用途に適しています。
rackup
Rackアプリケーションを起動するためのコマンドラインツール。WebサーバーとWebフレームワークの間のインターフェースを提供し、サーバーの設定や起動を簡略化します。
active record
RailsフレームワークのORM(オブジェクトリレーショナルマッピング)ライブラリで、データベース操作をオブジェクト指向的に行うことを可能にします。テーブルとクラスのマッピングを提供します。
sqlite3
軽量で自己完結型のSQLデータベースエンジン。開発やテスト環境で広く使われ、シンプルなデータベース操作を容易にするため、Railsなどのフレームワークとよく組み合わされます。
rake
Rubyで書かれたタスクランナーで、ビルド、テスト、自動化スクリプトの管理に使用されます。Rakefileにタスクを定義し、コマンドラインから実行できます。
エラーで詰まったこと
activerecordとsqlite3のバージョン管理エラーで詰まりました。
Ruby3.3.0では次のバージョンを指定するのが良さそうと教えてもらいました。(Chatgptに...) rubyのアップデートしたらこのあたりも変えないといけないんだね。一つ賢くなりまして。
gem 'activerecord', '~> 7.0' gem 'sqlite3', '~> 1.4'
(参考URL) qiita.com
まとめ
gemのバージョンに相互依存の関係があったり、ruby3系はこうした方がいいとかあったり、 色々と勉強になりました。 Chatgpt様様です。
流石にエラーを解消するのは一発では難しかったけれど、ターミナルのエラー文とちゃんと向き合うのが大事と改めて実感してます、ハイ。
お久しぶりSinatra
Rubyのバージョンを3.3.1にして安心しきってるtakoです ずっと放置してた学習も細々と再開しようと思います
挫折する要因はハードルをアプリ計画段階で高くしてしまってるからと反省... というわけで分相応な自分の身の丈に合ったアプリ開発を継続しようと思います (来年のRuby会議に向けて! 自分がどう関われるかは全くの不明)
Sinatra使うぞ!
- sinatra
- Gemfileに書いてインストール
- 何か機能付与したかったらgemファイル書いてインストールしなさい
- app.rb GETしましょう
- bundle exec ruby app.rb で起動
- localアドレスの4567だ!
備忘録的に簡単に書く
"hello!"見えたから最初のステップはクリア
勝手にリロードしてね
app.rbファイルなり色々書き込んだものを再度反映するには 立ち上げた状態から一度切って、もう一度立ち上げて・・・
大変なので勝手にリロード機能を追加
require 'sinatra' require 'sinatra/reloader' get '/' do 'how are you?' end
参考にしてるのはこのサイト↓
ルーティング
- publicに静的ファイルをおく
このファイル内のhtmlを優先して出すらしい 上記app.rbとコンフリクトしたら、publicが優先されると (なるほど)
ワイルドカードも使ってみた 自分が作りたいものではこれは使うと思われる
view
そんなのもあったな(だいぶ忘れてる) erb使った(すごい端折る)
markdown以下は今回使わなかった 必要になったら使おう、、、
gem "rackup"入れろと言われた
bundle exec rackup => config.ru がないよ!と言われ config.ruって何をするんだ? となりまして
なるほど、50%理解(メイビー) 先輩方の轍を踏ます、亀の歩みで理解深めていこ🐢
久しぶりにプログラミング学習を進めていく sinatra git
すごく久しぶりにブログを書きます。 つい最近まで中小企業診断士の試験勉強をしていました。 結果は分かりませんが、来年も頑張るものと思われます。汗
そしてwebアプリケーションについては作りたいものはあるものの、 継続力や忍耐力がまるでないので頓挫する可能性大ですが書きます。
gitのpushまでうろ覚え
ステージングに乗せてからコミットしてからpushの流れはなんとなくで覚えていたけれど、ブランチを切ったり切り替えたり、そもそもリモートリポジトリの登録を変えるなどなどうろ覚えでした。
pushからプルリクまでは大方スムーズですが、差分がリモート側とローカルリポジトリで重複があったりエラーがあるとお手上げな状態です。
なのでgitも学習し直さないと分かりませんね。
'git status'とか'git diff'の活用もできるようになっていきたい。
sinatraでとりあえずベースを作る
そもそもなのだけどbundlerがなんだったけ?からスタート。 なんとなくgemファイルの扱いはさわりを覚えている状態
gemの仲介人というかバージョン管理とか色々面倒ごとを引き受けてくれるのがbundlerさん。
gemファイルに何かしら追加したら'gem install'とかコマンド叩いてあげないといけないのも「あ〜そうだった」と思い出す。
サーバー立ち上げでエラー
Rubyのバージョンは3系になってたのだけれど、webrickはもう使わないから別の入れてと指示されて。
そうなんですね。じゃあpumaでいかせてもらいます。と書かれている通りにgemインストール。
ちなみにこれを参考に最初は作ってます
そんなに複雑なものを初手で作るつもりはないので、Ruby on Railsはまだまだ先です。 MVCとか何か追加するたびに右往左往してた記憶がある(かなり遠い記憶)
ちなみにこれもすごくうろ覚え HTTP通信
本当に忘れやすいな自分。という感想しか出てこない汗
地道に作ってみるように
地道に作ってみるようにします。何を作るのかはgithubに書いていきます。 かなりおそーく亀の歩みです。
2月の学習振り返り
今日から3月なので振り返りをしようと思う〜
2月は何した?
どうだった?
簡単なコードの練習をやってみたけど、毎日10分でも触れていると楽しい。 あとはすんなり行くと拍子抜けする。
ひさしくぶりに使って覚えていたのはeach doであったり、三項演算子など。
あとrudocopは細かくチェックしてくれてとてもみやすくなるなと、思い出しながら触っていた。
逆に覚えていないというか、まだ使い慣れてないな・・・と思うのがハッシュとか 正規表現あたりかな。
そんなに複雑なものをつくってはないので、インスタンスとかは触ってない。
あとmapなども使ってないので必要な場面で積極的に使っていきたい。
デバック機能もあまり使ってないな・・・
サイト製作ではWPのオリジナルテーマを作ってみようかと思っているけれど、時間あるのか自分?となっている。 できることをまとめたポートフォリオサイトを表示させる方が先かな?とも思って、 既存のテーマ+CSSで3月以降はちょっとだけ作ろうかなと思う。
草を生やす
githubの草がボーボーになってきた。 ちょっと嬉しい。
3月はどうする?
他のことでバタバタしそうだけどこの辺りかなと。
1月振り返りと2月以降の学習の動き
1月の振り返り
ポートフォリオをマークアップで作ってました。レスポンシブスタイルもある程度つけてきた。 あとは微調整も必要だし都度修正→追加でgithubにプッシュしていく。
マークアップは変化が目に見えるので楽しいな〜と思いながら、 まだsassやらjQueryやらは手付かずだし、 FlexBoxはシンプルで考えやすいけれどレスポンシブデザイン考えたら、 Bootstrapの方が良かったのかな?
なんて揺れたり。
表現の仕方によってどっち使うのか決めた方がいいかもしれない。
でもそれなりに作れたのでちょっと嬉しいというのが本音です。
いつも計画なしで作っていくのでデザインカンプは今後作ろうと思った。 Figmaを使う予定。来月からはちゃんとします。
2月にやること
もう2月ですがとりあえずお問い合わせページの設定であるとか細かい点を修正しつつ、 サイトデザインの制作物を作っていこうと思う。
1ヶ月ひとつ作れたら良いけれども、そこは計画立ててやってみよう。
そもそもマークアップに戻ったのはsinatraのデザインを整えるためだったのを忘れてはいけない・・・
年間での計画
デザインが一番とっつきやすいので、ひとまず年間計画としてはこう。
- 1月:ポートフォリオデザイン作成
- 2月:Webサイト制作①
- 3月:Webサイト制作②
- 4月:WordPressテーマ作成
- 5月:一人反省会 Ruby
- 6月:Rubyの学習 思い出すところから・・・
- 7月:データベース ←試験対策期間なのでできないかも
- 8月:データベース
- 9月:Sinatra
- 10月:Rails
- 11月:またまたアプリを作る
- 12月:がっつりアプリを作る💪
めちゃくちゃやりたいことある・・・ ダメダメ。 ちゃんと完結させてから中休み的にちょっと触る程度にしよう・・・。
先が長い
できたら今年の秋ごろにFBC復活したいけど、まだまだどうなっているかわからない状況。 やっと補助金の申請書を書き終えたけれども審査に通すので採択するまで時間もかかる。
あと事業が上手く乗るかもわからないし1年で全くダメなら資金が底をつくので ポシャったということで撤退して転職活動でもしなきゃな〜と思ってる。
しかも今年厄年・・・
今月もやれることを進めていく💪
本屋は楽しい
技術書とか買おうかな〜って迷ったら本屋行くし、 ネットですぐに買わない、電子書籍も自分には合わなかったので紙がデフォルト
なんとなく知りたいな〜というレベルのものは立ち読みで吸収できるのでとてもありがたい存在
ただ田舎のよくない点はちょっとでもニッチ寄りなものになると扱ってない。
田舎と都会の大きな差を感じるのは本屋です。 いつも旅行先で思います。
本屋の数は少なくていいので種類は豊富に取り扱ってほしい〜
愛媛のジュンク堂は三越の最上階に移転してから かなり小さくなってしまって、悲しい。
「ちょっと読みたいだけなのに」が叶いにくいのが田舎ストレスかな。
今年の予定はこんな感じ💡
自分のポートフォリオを作ってみる①
遅ればせながら明けましておめでとうございます。
sinatraのアプリ制作をしていくと、「あれ?かなりCSS 忘れてる・・・」と思ったので html/cssの勉強がてらドットインストールをずっとやってました。 jsで動きを追加するところまで進んだけれど、まだまだ理解しきれてないところも多いので、 一度自分で制作物を作ってみることにする。
制作の流れ
sinatraでの制作物
ひとまずsinatraの制作物もこのポートフォリオにリンク付けして表示できればなあと思う。
FBCを9回してから来月で半年になります。まだまだ再開の目処は立たないけれど、 ひとまずできることを継続するつもりです。
プラクティスがデータベース設計で止まっているので、その辺りの学習も含めてsinatraでデータベースの動きを見たかったのだけど、 そもそもリレーショナルを組んでいない。一気にやると絶対わからなくなるので・・・
なのでsinatraでの流れとしてはこうだった↓ 1. sinatraでアプリをつくる 2. 利用者管理アプリなのでデータベースを使う 3. データベースの挙動がわかる 4. もう一度ER図を考える
という当初の予定から 3.にいく手前で、「デザインがよろしくないな・・・」となりだす。
そしてhtml/cssに至る。
なのでプログラミングらしいことが全然できてない。 デザインがある程度できるようになったらまたrubyとデータベースの学習に戻りたいと思う。
というわけで学習の流れが、
- sinatraでアプリをつくる
- 利用者管理アプリなのでデータベースを使う
- html/cssの学習
- html/cssでのポートフォリオの作成
- jsをつけるならつける
- データベースの学習に進む
- rubyの学習に進む
- もう一度sinatraでアプリを作る
毎日草チャレンジしてるので小さな動きでもこの流れで学習進めていきます。
最近の動き
2022/12ごろ sinatraで利用者登録アプリを作ってみる
- メインの動きはできたけど細かな点 編集後確認アラートなどがまだまだ
- ここでデザインスキルが全然ダメだとなり、html/cssの方の学習に戻る
2023/1から html/cssを学習
- 一通りの動きを確認する flexboxのルールがまだいまいちついていけてない
- bootstrapはノータッチ
ポートフォリオにサイドバーつけたいのだけれどうまくかかってくれない。親要素とか子要素など区分けが曖昧なのでその辺り復習しないといけない。
365草CHALLENGE
そしてにしめさんから頂いたハッシュタグ「365草CHALLENGE」を継続する。 iPhoneに人工芝を作るぞ💪
制作物を載せてないのでこれだと履歴書・・・ まだまだ載せてないことたくさんあるけれど、人まずこのポートフォリオを充実させていこう。
2022年のふりかえりとFBC参加&復帰できない
もう12月31日ということに驚きを隠せない・・・汗
プログラミング学習もやってたけど他にも同時にやってた学習やボケーっとしてたところあったので反省もしていこうと思う💪
フィヨルドに3月から参加
今年の3月からフィヨルドブートキャンプに参加した。
初めのうちはサクサク進んだし、詰まったSSH接続も深く調べるきっかけになったのでよかった。 いまだに通信できなくて設定し直す時もあるけど。。。
一番詰まったのはlsコマンドの4,5とかwcコマンドだった。
挙動がそれらしくなれば・・・がなんとか自分が構える低ハードルのゴールで、リファクタリングをやれるほど余裕がない感じ。 後で正解見て「こう書けばいいのか〜」ともなるんだけどリーダブルコードが一朝一夕で身につくわけもなく、ひとまず出して指摘もらってから考えるぐらいのスタンスでいってた。ただwcでは本当に苦戦しまくってた。
とりあえず動くがギリギリのゴールラインの状態だったので、指摘事項についても文面からどんな感じに受け取れば良いのかわからない・・・コミュニケーション下手がもろに出る。
学生の時からそうである一定の文面は本当に汲み取れないというのが自分でもわかってる💦
相性もあると思う。
でも指摘の内容からしたら、リファレンスを浅くしか読んでいなかったことが弱点として出てきたのだけど、メソッドの挙動が掴みにくいものも多々あるわけで。 オブジェクト指向のフェーズは絶対これ以上に苦戦する・・・と感じていた。
ちなみにwcだけで嫌になったのもあり、このプラクティスだけに1.5ヶ月か2ヶ月ぐらい費やしていた。
そして次のプラクティスのデータベースについてはER図がうまく書けない。
データベースというもののコード上での使い方もいまいちイメージできなかったので、どうしていいのか困った。 大きな収穫としては9月ごろにリレーショナルデータベースとしての考え方、多対多(N対N)の関係なら中間テーブルを設ける。というのがなるほど!となった。 このわかった!感覚を得るまでに1ヶ月かかる。
文字ではわかったつもりでも、作ってみるとどうしてもカラムに何個もデータが入るという錯覚が抜けない。妙なバイアスがついちゃってる自分に驚く。
ツイッターのフォローフォロワーの関係もどちらかのプライマリーキーを参照してアカウントを見つけるというのもどういう構造になってるんだ?という感覚だった。中間テーブルも要らなかったわけだけど、休会してからわかったことが色々ある。
フィヨルドブートキャンプではプラクティス進捗が自分のも人のもアイコンで簡単に終えるデザインになっているので、序盤はそれが自分の学習ペースの基準やモチベーションにもつながってたのだけど、詰まったプラクティスがあって同時期か自分より後に入会した人がサクッと次に進んでいると正直凹んだ。しょうがないのだけど焦る→凹むの繰り返しが多い。進捗見える化はメリットデメリットあるので使い分けた方が良いと思う。見えないようにするボタンもしっかり実装されていた。
比べてもしょうがないのだけれどこればっかりはしょうがない。さらにほぼ伴奏状態で並走していた人がフッといなくなったりストップしてるとあれ?ってなる。休会や退会はしょうがないのだけれど寂しさはあったりする。コミュニティ感強いところのデメリットサイドかもしれない。仕方ないけどね。
こんな感じで目的がブレている時期だと思うので立ち止まっても良いと思う。 そして3月から8月まで続けたけど9月に休会申請を出す。プラクティスはデータベースのところで止まってる。
そして休会したまま今に至る。
休会して復帰してない理由
シンプルに学習費が捻出できない💦
あまり稼いでいない個人事業主ですが来年事務所を構えたいと思って試算したり物件を見てて、どうしてもプログラミング学習費用は無理だな・・・と判断した。
フィヨルドブートキャンプの学習費用は確かに安いけれど、ある程度のベースがある人からすると安いという状態になると思う。
ということで、
- 事務所の家賃や経費の捻出
- 学習費用支出のストップ
が一番大きい。
収入増やせば良い話では?ともなるのだけど、時間切り売りしていることに嫌気がさしてきたのもある。 贅沢な悩みなのだけど。
あとここでの目標が就職ではなかったのでそれもお休みしようと思ったきっかけになる。
2022年に終わった学び
実は8月ごろにそれまで続けていた通信制大学を卒業した。
厳密には大学には学生の頃通っていたのだけれど、その時に教員免許は取ってなくて。開業するにあたって、やっぱり教員免許あった方が箔がつくというか自信がなかったので取っておこうと思った。また数学メインで教えているけれど、数学が好きで数学の免許とった先生は「いい先生・残念な先生」と分かれるなという印象もあって、あえて自分の苦手な社会の中高の教員免許を取った。
数学は自分が解いて楽しい、というのが一番あるけれど、社会系は自分が語って楽しい。というのがある。ただ日本史(平安とか戦国までの時代)は本当に嫌いで免許とったにも関わらず覚えられない。自分でもあんぐりしてる・・・
理由はわかっているけれど、本当に興味ないんだなあと自分のことを思った笑
「大学通っていた頃に取っておけばよかったのに(経費的に)」と母にも言われたのだけど、そうだよな〜と思いながら思い出してみると・・・
そもそも実習に行く3回生ごろから4回生が学生生活でピークに忙しいタイミングだった。
- 研究室での実験
- 就活
- 日商簿記の勉強
- バイト
- 仕送りストップ
同時並行で全部やってたので擦り切れてたのでここに「就活 NEW! ⇦」みたいにタスクをプラスすることはできなかったなと。
私の大学通っている時期はトリドールの丸亀製麺が本格的に四国進出する頃だったので年末に丸亀製麺が釜揚げ(並)を100円で出すというかなり攻めのプロモーションをしていた。
仕送りなくて擦り切れてた頃は一日おにぎり一個でなるべく動かないように(とは言っても大学とバイトと行くのですが)して100円握りしめてうどん食べに行ってた。
日商簿記の2級まではストレートで取れたからその後は精神的にかなり楽だったなあ。
実は仕送り止まったのでこっちも苦労してたけど実家もかなり苦労していた。母と妹はお粥の時もあったそうなのでリーマンショックの余波が遅れてやってきた年だった。
このままじゃダメだな
話は戻るけども、FBCで「就職」を目標にしていないのであれば本気度も他の参加者と雲泥の差があるので、自分のペースで好きなようにやろうと思った。
ダラダラ続けてもサブスクなので支出がダラダラ流れてしまうなあと。
金銭的にと精神的に余裕ができたらまた復帰したいかなと思う。
今から参加しようかなと思う人に(ガチ回答する)
お正月にフィヨルドブートキャンプは体験が1週間あるので利用すると良いと思います。
そしてこれは言っていいのかわからないけれど、活用の仕方として色々書いておきます。
この流れが一番効率良い気がしてならない。(ソースは私!🌱) あとやっておくと良いと思うのはsshとかgitあたり。 そしてlsコマンドあたりを触れておくといいと思った。
この順番の理由
正直この順番にした理由としては、全く触れたこともない人がここに入ると、
- 一人暮らしで仕事と並行してやっている人:3年以上
- 実家暮らしで仕事やってない人:2年
就職を目標とするとこのくらいは最低かかると考えても良い気がする。ソースは私だ!ごめんなさい🙇♀️
そして程度問題でもあるけどプログラミングに触れたことがある人がやると
php,javascript,rubyあたりをやってた人 仕事しているしていないでどのくらいの影響度か測れないけど1~1.5年イメージ
Java,C#,C++とか高等言語いじってた人 1年以内卒業もあり得るかも?チーム開発と卒業制作の進捗によりけり
こんな雰囲気で捉えています。何度も言いますがソースは私なので確信はもてない🙇♀️
全く触れてこずに入るとなると手取り足取りなところではないので「自分の足でやりなさい、ちゃんとヘルプ出したら対応しましょう」という印象なので、高い評価を得ている。
そして全く触れてない→要はマークアップとjavascriptとかフロントサイドも全くという場合は、3年は見た方が良いということなので結局100万以上かかる計算になる。
2年で72万くらいかな。
確かに安いし融通が利きやすいところだけれど、自分にとっても無理ない範囲かは検討しておいた方が良いと思う。多少の知見があってから入会した方が疑問が出た時の検索力も上がるし、一つの知識から数珠繋ぎであれもこれもと連想してわかることもあるから。
なので全く触れてない人はweb制作全般をドットインストールとかプロゲートで模写・オリジナル作ってgitに草生やしてから入会すると一番出費が少なくなるかも?と思ってる。
ある程度全体の流れがわからないと動けないというのが私なので、同じタイプの人ならこんな感じで進めても良いのでは?と考える。
多分ワードプレスのテンプレ作った経験無かったら私もこの期間でデータベースまではいけてなかっただろうな・・・と感じている。苦戦したプラクティスはいくつかあるのでなるべく最初の段階では達成感が得やすいペースが維持されるといいなと思う。
作り続けることはやめたくない
休会してしまったけど、作ることはやめたくないわけで。自分で考えたサービスを自分で作るという活動は楽しいわけで。 今も正直データベースのプラクティスに飽きてしまって(ごめんなさぁああぁい💦)sinatraで自分が考えたアプリをいそいそ作っているわけです。
挙動もぎこちないし、まだまだ改良点がいるけれどそれでもデータベースを組み込んで自分で作っているものができてちょっと達成感。
楽しいなと思う。
そしてgitでサイト公開する方法を発見したのでなるべくちょこちょこ草を早していく予定。
休会した人向け(?) になるのかわからないけれど、にしめさんが運営するRESTUDY cafeには長くお世話になりそうな。
プログラミング興味がある人は行動力ある人も多いので、こういったコミュニティ運営してくれる人もいてホントに助かる〜
就職を目標にしなかった理由
- 個人事業主で教育から離れたくない
- 二足のわらじスタイルの働き方が奨励されない
- そもそも愛媛に求人ほぼない
シンプルに求人格差は地域でかなり色濃く出るわけでして。
就職を目標にしても結婚してて県外に出られないのでNGとなる。 ruby求人がないこともないけれど、100あるものから1選ぶのと、ギリギリ10あるものから1選ぶのは違う。
あと通うとなってもかなり遠方にしかない求人ばかりで断念。
在宅の働き方が可能なのは現場力ある人だけなので、そうした経験はどこかに出勤スタイルで勤めてからじゃないと難しいわけで。
あと田舎のいいところばっかりメディアでは出るから住んでるものからネガキャンすると四国で一番閉鎖的なのが愛媛だからね! なるべくそうじゃないコミュニティに所属したりノット愛媛感な人とお付き合いするのが移住者の鉄則です! 移住者同士のマウント合戦は聞かないのでそれはあまりないと思う。
ソースは私のプログラマーの友達だ!こっちに数年移住してました。 旅行ならいいけど深く考えず移住してきたら傷をおうので、こんなタコでよければいつでもメッセージください。 移住したい人に全力で寄り添うよ💪
移住ダメージ負わせたくないもの。
来年の目標
無計画性と自分のハードル上げに行ってますが、失敗は毎年やっとかないと歳とって保守的頑固お化けになっちゃうのでやることはやってみよう💪
今私をヨイショしてくれる人がいるコミュニティで温室育ちなアラサーになってるので、バランス取っとかないと裸の王様になると思ってやってる。
生涯学習がもっと浸透してくれればいいなと思ってる。
来年は不格好でも頑張る💪
webアプリ作りがちょっと煮詰まる
ちょっと煮詰まってるけども、頑張ろう💪
煮詰まっている内容
- 検索フォームの処理をどうつけるか?
- 削除の確認ウィンドウのjavascript分岐
主にこんなところ
進めていくTODO
前のブログの内容は書いただけになってしまっているけれど、 何回も同じこと書いていたらすみません・・・。
- 個人情報:住所、メールアドレス、備考欄の登録
- デザイン修正
- githubに草立てる
- 検索フォームの設定
- 削除の確認ウィンドウ分岐
- ユーザー一覧をidの番号順に並べる
流れをまとめておく
検索フォームの流れ
ユーザー側の見かけ上の流れ 1.検索idを入力して検索ボタンを押すと 2.内容に合った個人情報が表示される
制作側での流れ 1.入力フォームと検索ボタン:デザイン 2.入力されたidをinputタグのnameとかに格納 3.id番号のデータをデータベースと照合させる処理:ruby 4.登録なかったらnot foundページ、あったら一覧に表示させるページ
かなりざっくり。 データを渡して処理するところが大変。
削除の流れ
- 削除confirmはjsで作ってある 2.削除するかの確認ではい・いいえを選択 3.「はい」なら削除してトップページへ 4.「いいえ」なら何もせずにトップページへ
この条件分岐はjavascriptでやりたいのだけれど、
/delというルーティングをrubyでやってて→削除する作業
htmlタグで<form action="/del">→ボタン押したらrubyのdelete作業実行
という流れをすでに組んでしまっているので、
/delの作業をするかどうかをjsの中に入れたい。
これが結構詰まってる。
前回詰まってたcssがかからない問題について
階層が問題だったみたい。
paramsでidを押すと個別ページが表示されるようにしていたので、
/mypage/:idでerbファイルが表示されるようにしていた。
cssファイルのある階層は/public/style.cssに対して、
mypage.erbならhref="style.css"でよかったけども階層が/mypage/:idでは
もう一つ下のイメージになるので、相対パスで指定してあげることで解消した。
このサイトが参考になった。
他にもあったのだけれど間違えて消してしまってどこのサイトかわからなくなった💦
課題は細分化して考えることにする💪