A3 Code Note

09/05/2022

slimの始め方

slimのインストール

アプリのフォルダ内でslimをインストール

gem install slim

html.erb → html.slim に変換させることができるようにする

gem install html2slim

gemfileに下記の2文を追加してbundle install

gem 'slim-rails'
gem 'html2slim'
bundle install

viewフォルダに元からあったerbファイルを削除
※拡張子が.erbのファイルがない場合はスキップ

bundle exec erb2slim app/views app/views -d

今後自動的にslimファイルを作成されるようにする
config/application.rbにあるconfigを以下のようにslimを指定

module App
  class Application < Rails::Application
    config.generators.template_engine = :slim #slimに変更
  end                                                                                                                                                                     
end

slimファイルを表示させる

app/viewフォルダのなかに、tweetsフォルダ作成

rails g controller tweets

そのなかにindex.html.slimというファイルを新しく作成し、slimを記述

div
    h1 slim
    ul
        li Ruby
        li Rails
        li HTML
    p

controllers/tweets_controller.rb の中にindexアクションを追加

class ArchivesController < ApplicationController
    def index
    end
end

config/routes.rb ルーティング

Rails.application.routes.draw do
  root "tweets#index"
end

サーバーを再起動して、ページを表示

サーバーを起動してる場合は ctrl + c でサーバーを停止
してない場合はサーバーを起動

rails s

localhostでページを表示
http://localhost:3000/

サーバーが立ち上がらない場合

Rails ‘error Command “webpack” not found.’で、
サーバーが立ち上がらない際以下実行

Gemfile内のwebpackerを最新のものに

gem 'webpacker', '~> 5.0'

bundleを行う

bundle

webpackerのinstallを再度行う
その際conflictを起こしても「y」と入力しEnter

bundle exec rails webpacker:install

webpackerをcompile

bundle exec rails webpacker:compile

サーバーを再起動して、ページを表示を再度やってみましょう。

引用元記事