# Terminal rails g mannequin class identify rails g mannequin model identify rails g scaffold merchandise identify class:belongs_to model:belongs_to bundle add faker bundle add hotwire_combobox yarn add @josefarias/hotwire_combobox rails g controller searches/classes present rails g controller searches/manufacturers present
# app/views/merchandise/_form.html.erb <div class="mb-3"> <%# kind.label :category_id, class: 'form-label' %> <%# kind.choose :category_id, Class.all.map r, {}, class: 'form-control' %> <%= kind.combobox :category_id, searches_categories_path, label: "Class", placeholder: "Choose an choice" %> </div> <div class="mb-3"> <%# kind.label :brand_id, class: 'form-label' %> <%# kind.choose :brand_id, Model.all.map r, {}, class: 'form-control' %> <%= kind.combobox :brand_id, searches_brands_path, label: "Model", placeholder: "Choose an choice" %> </div>
# db/seeds.rb 1000.instances do Class.find_or_create_by(identify: Faker::Guide.style) Model.find_or_create_by(identify: Faker::Firm.identify) finish
# config/routes.rb namespace :searches do useful resource :manufacturers, solely: :present useful resource :classes, solely: :present finish
# app/views/layouts/software.html.erb <%= combobox_style_tag %>
# app/controllers/searches/brands_controller.rb class Searches::BrandsController < ApplicationController def present @manufacturers = Model.the place("identify like :question", question: "%#{params[:q]}%").order(:identify) finish finish
# app/controllers/searches/categories_controller.rb class Searches::CategoriesController < ApplicationController def present @classes = Class.the place("identify like :question", question: "%#{params[:q]}%").order(:identify) finish finish
# app/views/searches/manufacturers/present.turbo_stream.erb <%# async_combobox_options @manufacturers.map [brand.name, brand.id] %> <%= async_combobox_options @manufacturers %>
# app/views/searches/classes/present.turbo_stream.erb <%= async_combobox_options @classes %>
# app/javascript/controllers/software.js import HwComboboxController from "@josefarias/hotwire_combobox" software.register("hw-combobox", HwComboboxController)
# app/fashions/model.rb class Model < ApplicationRecord def to_combobox_display identify finish finish
# app/fashions/class.rb class Class < ApplicationRecord def to_combobox_display identify finish finish
# app/belongings/stylesheets/software.bootstrap.scss .hw-combobox, .hw-combobox__main__wrapper { width: 100% !essential; }