Di aplikasi Rails saya, saya gunakan Rubocop
untuk memeriksa masalah. Hari itu memberi saya sebuah kesalahan seperti ini: Assignment Branch Condition size for show is too high
. Ini kode saya:
def show
@category = Category.friendly.find(params[:id])
@categories = Category.all
@search = @category.products.approved.order(updated_at: :desc).ransack(params[:q])
@products = @search.result.page(params[:page]).per(50)
rate
end
Apa artinya ini dan bagaimana cara memperbaikinya?
ruby-on-rails
ruby
code-metrics
rubocop
THpubs
sumber
sumber
rubocop
cara formal untuk mengatakan "metode Anda melakukan terlalu banyak".Jawaban:
Ukuran Assignment Branch Condition (ABC) adalah ukuran ukuran suatu metode. Ini pada dasarnya ditentukan dengan menghitung jumlah pernyataan A ssignments, B ranches , dan C onditional. (lebih detail..)
Untuk mengurangi skor ABC, Anda dapat memindahkan beberapa tugas tersebut ke panggilan before_action:
sumber