Size: a a a

Ruby, Rails, Hanami | dry-rb

2020 February 29

X

Xander in Ruby, Rails, Hanami | dry-rb
create_table "orders", force: :cascade do |t|
   t.integer "number"
   t.integer "price"
   t.datetime "created_at", precision: 6, null: false
   t.datetime "updated_at", precision: 6, null: false
   t.integer "supplier_id"
 end

 create_table "suppliers", force: :cascade do |t|
   t.string "short_name"
   t.string "company"
   t.string "contact"
   t.string "owner"
   t.integer "phone"
   t.integer "order_id"
   t.datetime "created_at", precision: 6, null: false
   t.datetime "updated_at", precision: 6, null: false
   t.index ["order_id"], name: "index_suppliers_on_order_id"
 end
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Ну всё логично, у сапплаеров может быть много ордеров, так тебе просто ВСЕХ сапплаеров надо вытягивать во вью
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Xander
<%= form.collection_select :supplier_id, Supplier.order(:short_name), :id, :short_name, include_blank: true %>
Supplier.all(:short_name) или как-то так
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
У меня есть метод что работает на всех акшенах кроме index
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
def get_supplier
     @supplier = Supplier.find(@order.supplier_id)
   end
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
в таком случае   <%= @supplier.short_name %><br>
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
Рендерит
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Да
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Просто было бы логично Может @order.supplier.short_name
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Xander
Дарова! плиз подскажите нубу, как запилить метод ассоциации с foreign key одной модели в акшене  index, что то типа такого  
def get_suppliers
     @supplier = Supplier.find(@order.supplier_id)
   end
Ну а здесь ты пытаешься зачем-то вытянуть всех сапплаеров которые владеют ордером. Но ордером владеет всегда только один сапплаер
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
Ярослав Коробейников
Просто было бы логично Может @order.supplier.short_name
undefined method `short_name' for nil:NilClass
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Связи вернул на место? Ордерс белонгс ту сапплаер?
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
так мне ведь нужно supplier belongs to orders
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
у многих оредров может быть один и тот же саплаер
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
Вангую тут надо юзать build_association
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Xander
у многих оредров может быть один и тот же саплаер
Ну ё ма ё. Переверни мысль. У одного и того же сапплаера может быть много ордеров
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Ордер белогс ту сапплаер
источник

ЯК

Ярослав Коробейников in Ruby, Rails, Hanami | dry-rb
Сапплаер хэз мэни ордерс
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
Мне кажется я понял
источник

X

Xander in Ruby, Rails, Hanami | dry-rb
Спасибо большое!
источник