學習目的:css
對一些主要的gem進行學習瞭解基本功能: html
做者的一些答覆:(連接)jquery
關於安全配置:git
對於配置文件, 安全僅有一點: 不要提交任何敏感信息到服務端. 因此 rails-template
是添加了一個 config/application.yml.example
, 隨後由開發者自行復制一份爲 config/application.yml
, 而此文件在 git
中是忽略的. 這是 rails-template
的集成方式.github
在不一樣的生產環境, config/application.yml
由發佈者在 mina setup
時自行配置便可. rails-template
在隨後的發佈過程自動軟連接它, 保證每次新的發佈使用同一份配置. 簡明清晰的流程.web
試(非系統默認): 數據庫
rspec-rails(熟練)bootstrap
factory_bot(熟練)sass
capybara(熟悉) 安全
launchy(簡單使用)save_and_open_page命令
font-awesome-sass(簡單使用) 增長各種圖標。
bootstrap4(新的版本,更強大沒用過,gem 'bootstrap') (點擊查看官方使用文檔)
#這是Rubygem的如何安裝鏈接:https://github.com/twbs/bootstrap-rubygem
simple_form:通過討論simple_form的技倆徹底能夠用本身的方式寫在helpers中,不過它的替換成本很低,很適合寫後臺用。因此做者集成了進來。
high_voltage 一個創建靜態網頁,about的小插件。
Figaro (沒看)
slim 一種簡寫方式。
Sidekiq:點擊進入本身寫的博客
kaminari 一個分頁器。 ✅簡單實用,功能很強大,按需設置。
mina-deploy/ mina 一個快速部署的工具。 (點擊轉到相關博客)
puma (5300🌟) 一個Ruby/Rack網頁服務,用於併發concurrency (點擊看博客)
Lograge (2350🌟) 「改良Rails默認的請求日誌 「 (點擊查看博客)
Database Cleaner是一系列的策略用於在Ruby中清潔數據庫。開始的使用案例是在測試中用來確保一個乾淨的狀態 。每一個策略是一小段代碼,這些策略一般被任何Ruby app須要用於和數據庫的測試相關。
group :test do gem 'database_cleaner' end
對數據庫,Libraries,和策略的支持,看readme。
如何使用
在測試前,須要一些策略須要先start,調用DatabaseCleaner.start,或者使用一個block,DatabaseCleaner.cleaning。
模版把配置放入了support/database_cleaner.rb中了
require 'database_cleaner' DatabaseCleaner.strategy = :transaction DatabaseCleaner.start # usually this is called in setup of a test dirty_the_db DatabaseCleaner.clean # cleanup of the test # OR DatabaseCleaner.cleaning do dirty_the_db end
下載後,須要進行一系列配置。
1. @import "bootstrap"; #在application.scss中,其餘的全刪除。
2. 它的JavaScript功能依賴JQuery。因此須要使用jquery-rails這個gem
3. 在application.js中加入
//= require jquery3 //= require popper //= require bootstrap-sprockets
英文文檔結構及部分基本知識點摘錄:
https://www.cnblogs.com/chentianwei/p/9207078.html
slim一種簡寫方式,暫時忽略
https://github.com/slim-template/slim
https://www.rubydoc.info/gems/slim/frames
high_voltage 一個創建靜態網頁,about的小插件。
安裝usage,新建一個pages/about.html.erb。這裏是寫關於about的東東。
而後在任意位置加鏈接便可
<%= link_to 'About', page_path('about') %>
從80percent/rails-template下載的模版使用了slim,報告錯誤❌
補救,重新下載,而後rails db:reset後, rails s -> localhost:3000正常了✌️
Figaro
Simple, Heroku-friendly Rails app configuration using ENV
and a single YAML file
一個用於Rails環境配置的gem.
具體沒有看。
⚠️:做者認爲爲了簡明,安全的手法去集成80template,因此使用了figaro
一個分頁器。
特色:
Array
, Hash
, Object
Query basics:
默認每頁 25條記錄,per_page
User.page(7) To fetch the 7th page of users (default per_page
is 25)
User.page(1).limit_value 返回限制的記錄數
User.page.total_pages 返回總數
User.page(1).next_page 下一頁的頁數
User.page(2).prev_page 上一頁的頁數
first_page?和last_page?返回boolean
User.page(100).out_of_range? 返回true/false
Per方法:改變每頁的記錄數
User.page(1).per(10)
快速建立配置文件config/initializers/kaminari_config.rb
rails g kaminari:config
裏面有一系列默認配置能夠設定。如:config.default_per_page = 15
也可在model中添加(修改起來方便,無需重啓服務器了):
paginates_per 50
或者直接在Controller中:
@users = User.order(:name).page(params[:page]).per(10)
在view中:
調用paginate helper, 會自動出現導航條。
<%= paginate @users %>
<%= link_to_next_page @items, 'Next Page' %> #出現next page的鏈接
相關鏈接的外觀選項不少。能夠本身定義。
如何改爲中文:
rails g kaminari:views default
而後在新增的文件中進行修改。app/views/kaminari。
把link_to_unless的name選項改爲中文字符串便可。這個是t('XXX').html_safe(用不到國際化)
rails g kaminari:views 能夠顯示能用的theme。如bootstrap4.
rails g kaminari:views Bootstrap4