# Asocjacje ActiveRecord (Ruby on Rails) > has_many, belongs_to, has_one, has_and_belongs_to_many, polymorphic, dependent destroy - 24 pytań z rozmów - Mid-Level - [Pytania z rozmów: Ruby on Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne.md) ## 1. Której asocjacji należy użyć w modelu Comment, aby wskazać, że komentarz musi należeć do artykułu? **Odpowiedź** Asocjacja belongs_to służy do zdefiniowania relacji, w której rekord należy do innego. W tym przypadku Comment należy do Article. Zgodnie z konwencją oznacza to, że tabela comments zawiera kolumnę article_id będącą kluczem obcym do tabeli articles. ## 2. Której asocjacji należy użyć w modelu Article, aby umożliwić posiadanie wielu powiązanych komentarzy? **Odpowiedź** Asocjacja has_many definiuje relację jeden-do-wielu. Article może mieć wiele Comment. Ta asocjacja jest lustrzanym odbiciem belongs_to i nie przechowuje klucza obcego we własnej tabeli, lecz oczekuje, że powiązany model (Comment) ma kolumnę article_id. ## 3. Której asocjacji należy użyć, aby użytkownik miał jeden profil, gdzie profil zawiera klucz obcy? **Odpowiedź** Asocjacja has_one definiuje relację jeden-do-jednego, w której drugi model zawiera klucz obcy. W przypadku User has_one :profile tabela profiles będzie zawierać kolumnę user_id. Jest to odwrotność has_one/belongs_to w zależności od tego, gdzie znajduje się klucz obcy. ## Jeszcze 21 dostępnych pytań - Jak zamodelować relację wiele-do-wielu między Post a Tag z tabelą łączącą zawierającą dodatkowe atrybuty? - Jakie jest domyślne zachowanie opcji dependent: :destroy w asocjacji has_many? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne Ruby on Rails - [Podstawy Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-basics.md): 25 pytań, Junior - [Programowanie obiektowe w Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-oop.md): 20 pytań, Junior - [Podstawy Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-fundamentals.md): 18 pytań, Junior - [Routing & Controllers](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/routing-controllers.md): 22 pytań, Junior - [Podstawy ActiveRecord](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-basics.md): 25 pytań, Junior - [Widoki i szablony ERB](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/views-erb-templates.md): 20 pytań, Junior - [Zaawansowane zapytania ActiveRecord](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-queries.md): 28 pytań, Mid-Level - [Formularze Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-forms.md): 20 pytań, Mid-Level - [Uwierzytelnianie i autoryzacja](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/authentication-authorization.md): 22 pytań, Mid-Level - [Nowoczesny Asset Pipeline i frontend](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-asset-pipeline.md): 18 pytań, Mid-Level - [Tryb API Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-api-mode.md): 20 pytań, Mid-Level - [Testowanie z RSpec](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-testing-rspec.md): 24 pytań, Mid-Level - [ActiveJob & Background Jobs](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-job-background-jobs.md): 20 pytań, Mid-Level - [ActionCable & WebSockets](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/action-cable-websockets.md): 18 pytań, Mid-Level - [ActionMailer](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/action-mailer.md): 18 pytań, Mid-Level - [ActiveStorage](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-storage.md): 20 pytań, Mid-Level - [Strategie cachowania](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/caching-strategies.md): 20 pytań, Mid-Level - [Zaawansowane migracje](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/database-migrations-advanced.md): 20 pytań, Mid-Level - [Rails Engines i aplikacje modułowe](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-engines-modular-apps.md): 18 pytań, Senior - [Optymalizacja wydajności](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/performance-optimization.md): 26 pytań, Senior - [Wzorce projektowe w Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-design-patterns.md): 22 pytań, Senior - [Metaprogramowanie w Ruby](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/ruby-metaprogramming.md): 20 pytań, Senior - [Bezpieczeństwo Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-security.md): 22 pytań, Senior - [GraphQL z Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/graphql-rails.md): 20 pytań, Senior - [Wdrażanie i Produkcja](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-deployment-production.md): 20 pytań, Senior - [Monitoring & Logging](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/monitoring-logging.md): 20 pytań, Senior - [Strategie aktualizacji Rails](https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/rails-upgrade-strategies.md): 18 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/ruby-on-rails/pytania-rekrutacyjne/active-record-associations