Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

zad6 #264

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

zad6 #264

wants to merge 1 commit into from

Conversation

karolasp
Copy link

@karolasp karolasp commented Dec 9, 2018

No description provided.

@ahawrylak ahawrylak added the zad6 label Dec 9, 2018
@ahawrylak ahawrylak self-requested a review December 9, 2018 21:29
@ahawrylak ahawrylak self-assigned this Dec 11, 2018
Copy link
Collaborator

@ahawrylak ahawrylak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dzięki za rozwiązanie 👍 Niestety nie udało mi się odpalić aplikacji przez złe relacje pomiędzy Category i Product. Można też dodać seedy. Reszta wygląda ok 🎉

def change
create_table :customers do |t|
t.string :name, null: false
t.string :mail, null: false
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

na poziomie bazy jest NULL CONSTRAINT na kolumnie mail, ale nie ma walidacji w modelu Customer - powinna się tam znaleźć żeby nie dostawać brzydkich błędów z bazy danych tylko błędy z modelu. 😉

@@ -0,0 +1,9 @@
class Product < ApplicationRecord
belongs_to :customer
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ta linia nie pozwala na stworzenie produktu, który nie ma jeszcze przypisanego customera. Można to poprawić w następujący sposób:

belongs_to :customer, optional: true

@@ -0,0 +1,9 @@
class Product < ApplicationRecord
belongs_to :customer
has_many :categories, through: :category_product
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ta relacja zawsze będzie podnosiła błąd, tak jak tutaj:
screen shot 2018-12-11 at 15 07 15
Rzeczywiście nie ma tutaj zdefiniowanej relacji :category_product. Powinno być tak:

has_many :category_products
has_many :categories, through: :category_products

Analogicznie z drugiej strony relacji w modelu Category 😉

@ahawrylak ahawrylak added the ✓ Done in the summary it is considered as done label Dec 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✓ Done in the summary it is considered as done zad6
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants