rails
Railsの動作環境を準備する
Macの場合
code:shell
brew install sqlite
brew install yarn
gem install sqlite3
以下同様
Windowsの場合
code:powershell
(PowerShellを管理者権限で起動する)
Set-ExecutionPolicy Bypass
choco upgrade msys2
choco upgrade mingw
cinst ruby
ridk install 1 2 3
cinst sqlite
cinst nodejs
cinst yarn
gem update --system
gem install sqlite3
gem install rails
以下同様
以下同様の部分(PowerShell or Terminal)
code:bash
(PowerShellを一般権限で起動する)
rails new blog
cd blog
bundle install
rails webpacker:install
rails server
rails serverでエラーがでなかったら、
Railsの実行環境ができました!おめでとう!
gitをつかってログを保存する
~/blog/で
code:bash
git init
git add .
git commit -m "initial"
してgitに保存する。
コントローラーを追加してトップページにする
~/blog/で↓これを実行する
code:bash
rails generate controller Welcome index
vscode で ~/blog/app/views/welcome/index.html.erbに生成されたファイルを以下のように編集する! code:index.html.erb
<h1>Welcome#index</h1>
<h2>Hello, Hoge!</h2>
<p>Find me in app/views/welcome/index.html.erb</p>
そのあと、たあと、rails serverを実行する!!
https://gyazo.com/632a36be7a0fe39ddbd9a013755b66be
上記のようになっていたら成功です
route.rbを編集する
vscode で ~/blog/config/routes.rbを以下のように編集する! code:routes.rb
Rails.application.routes.draw do
# controllers/welcome.rb の、 WelcomeController#indexが呼ばれる
root 'welcome#index'
get 'welcome/index'
end
scssを編集する
vscode で ~/blog/app/assets/stylesheets/welcome.scssを編集する! code:welcome.scss
h1 {color:red;}
h2 {color:red;}
p {color:red;}
すべての文字が赤くなっていたら成功!!
ArticleのControllerとViewを作る
~/blog/で↓これを実行する
code:bash
rails generate controller Articles
vscode で ~/blog/config/routes.rbを以下のように編集する! code:routes.rb
Rails.application.routes.draw do
# controllers/welcome.rb の、 WelcomeController#indexが呼ばれる
root 'welcome#index'
get 'welcome/index'
resources :articles
end
vscode で ~/blog/app/controllers/articles_controller.rbを以下のように編集する! code:articles_controller.rb
class ArticlesController < ApplicationController
def index
@articles = Article.all
end
def show
@article = Article.find(params:id) end
def new
@article = Article.new
end
def create
@article = Article.new(params.require(:article).permit(:title, :text))
@article.save
redirect_to @article
end
end
Article Modelをつくる
~/blog/で↓これを実行する
code:bash
rails generate model Article title:string text:text
rails db:migrate
vscode で ~/blog/app/views/articles/index.html.erbを新しいファイルとして追加する! code:index.html.erb
<h1>Listing articles</h1>
<%= link_to 'New article', new_article_path %>
<table>
<tr>
<th>Title</th>
<th>Text</th>
<th></th>
</tr>
<% @articles.each do |article| %>
<tr>
<td><%= article.title %></td>
<td><%= article.text %></td>
<td><%= link_to 'Show', article_path(article) %></td>
</tr>
<% end %>
</table>
vscode で ~/blog/app/views/articles/new.html.erbを新しいファイルとして追加する! code:new.html.erb
<h1>New Article</h1>
<%= form_with scope: :article, url: articles_path, local: true do |form| %>
<p>
<%= form.label :title %><br>
<%= form.text_field :title %>
</p>
<p>
<%= form.label :text %><br>
<%= form.text_area :text %>
</p>
<p>
<%= form.submit %>
</p>
<% end %>
vscode で ~/blog/app/views/articles/show.html.erbを新しいファイルとして追加する! code:show.html.erb
<p>
<strong>Title:</strong>
<%= @article.title %>
</p>
<p>
<strong>Text:</strong>
<%= @article.text %>
</p>
<%= link_to 'Articles', articles_path %>
Formが表示されたら成功
入力した内容を確認する