[RUBY] Créer un site EC avec Rails5 ③-Définir des associations de modèles et d'autres choses-

introduction

Il s'agit d'une continuation de la série "Créer un site EC avec Rails 5 (2)" (https://qiita.com/GreenFingers_tk/items/03f884cb7eb63fbf708d), qui crée un site EC sur lequel vous pouvez faire vos achats dans une boulangerie fictive. Cette fois est encore au stade de la préparation. Nous définirons la relation entre les modèles.

Code source

https://github.com/Sn16799/bakeryFUMIZUKI

Paramètres des pièces du modèle

Définissez les associations et les validations.

app/models/address.rb


belongs_to :customer

validates :post_code, presence: true, length: {minimum: 2, maximum: 10}
validates :addressee, presence: true, length: {minimum: 2, maximum: 35}
validates :address, presence: true, length: {minimum: 2, maximum: 50}

app/models/cart_item.rb


belongs_to :customer
belongs_to :product
validates :customer_id, presence: true
validates :product_id, presence: true

app/models/customer.rb


  has_many :cart_items
  has_many :products, through: :cart_items

  has_many :orders
  has_many :addresses

  validates :email, length: {minimum: 3, maximum: 80}
  validates :family_name, length: {minimum: 1, maximum: 15}
  validates :family_name_kana, length: {minimum: 1, maximum: 20}
  validates :first_name, length: {minimum: 1, maximum: 15}
  validates :first_name_kana, length: {minimum: 2, maximum: 20}
  validates :post_code, length: {minimum: 3, maximum: 10}
  validates :address, length: {minimum: 3, maximum: 50}
  validates :tel, length: {minimum: 3, maximum: 15}

app/models/genre.rb


has_many :products
validates :name, presence: true, length: {maximum:15,minimum:2}

app/models/order.rb


belongs_to :customer
has_many :order_items, dependent: :destroy
#Avoir plusieurs produits via une table intermédiaire
has_many :products, :through => :order_items

belongs_to :customer

validates :addressee, presence: true, length: {maximum: 35, minimum: 2}
validates :post_code, presence: true, length: {maximum: 10, minimum: 2}
validates :send_to_address, presence: true, length: {maximum: 50, minimum: 3}

app/models/order_item.rb


belongs_to :order
belongs_to :product

app/models/product.rb


belongs_to :genre
has_many :cart_items
has_many :customers, through: :cart_items
has_many :order_items
has_many :products, through: :order_items
attachment :image
validates :name, presence: true, length: {maximum:30,minimum:2}
validates :introduction, presence: true, length: {maximum:250,minimum:2}
validates :price, presence: true

Postscript

Tu devrais être prêt maintenant. Je voudrais commencer la mise en œuvre à partir de la prochaine fois. Cela n'a rien à voir avec la base de la fonction, mais il est temps de décider de la palette de couleurs et du design du site. Au moment de la formation à l'implémentation en équipe, je parlais initialement de «utilisons un jeu de couleurs à la japonaise», mais quand je l'ai réalisé, il n'y avait rien de japonais, alors pourquoi ne pas envisager un design à la japonaise cette fois? Nous prévoyons de le faire.

Est-il possible d'exprimer un goût japonais avec 0 connaissance du design? Continuez à la prochaine fois!

Site d'échantillons de couleurs recommandé

https://www.color-sample.com/ Un site appelé "Kasane's Colors", une collection d'échantillons de couleurs utilisés par les gens de la période Heian pour combiner et s'habiller avec des couleurs de kimono. Il existe des sites similaires, mais celui-ci a un code couleur et est pratique.

https://colordrop.io/ Vous pouvez voir les échantillons de couleurs qui sont combinés en 4 couleurs à l'infini. Vous pouvez rechercher par une couleur spécifique, ou vous pouvez l'aimer et tout voir ensemble. ** Cela fait 2 heures que je l'ai remarqué. ** **

https://www.schemecolor.com/ Il existe de nombreuses combinaisons de 2 à 6 couleurs. Fonction de recherche / tri complète. ** Cela fait 2 heures que je l'ai remarqué. ** **

Recommended Posts

Créer un site EC avec Rails5 ③-Définir des associations de modèles et d'autres choses-
Créer un site EC avec Rails5 ⑤ ~ Modèle client ~
Créer un site EC avec Rails5 ④ ~ En-tête et pied de page ~
Créer un site EC avec Rails 5 ⑩ ~ Créer une fonction de commande ~
Créer un site EC avec Rails 5 ⑨ ~ Créer une fonction de panier ~
Créez un site EC avec Rails5 ⑥ ~ entrée de données de départ ~
Créer un site EC avec Rails5 ② ~ Paramètres Bootstrap4, définition du contrôleur / action ~
Création d'un site EC avec Rails5 ⑧ ~ Modèle de produit, affichage restreint conditionnel pour les parents et les enfants ~
Création d'un site EC avec Rails5 ①-Configuration de l'application, préparation de divers gemmes, création de modèle / routage-
Créez un site EC en utilisant des rayures! (Création de compte)
Créer un service avec un modèle vide Liferay 7.0 / DXP
[Rails] Créer une application
Créez un environnement pour Rails5 et postgresql avec Docker afin que pgadmin puisse également être utilisé
[Rails] Fonction de panier de site EC
Créer un site de catalogue d'applications à l'aide de l'interface de ligne de commande pour Microsoft 365 avec Docker