[RUBY] Warum ist es nicht validiert! ?? (einzigartig: wahre Ausgabe)

Nein. Ich war wirklich überrascht. Derzeit implementiert Rails 5.2 die Flima-App. : Stirnrunzeln2: Validierung wird jeder machen, oder? Ja ich weiß. Jeder fühlt sich genauso wie Atai. : girl_tone2: Ich kenne Atai. Als allererstes. Es scheint besser, die Validierung sowohl in das Modell als auch in die Migrationsdatei zu schreiben. Dieses Mal geht es um die Migrationsdatei, daher ist es eine gute Idee, sich auf die Artikel anderer Personen zur Validierung des Modells zu beziehen.

1. Das erste, was du sehen sollst, ist das!

:writing_hand_tone1:

db/migrate/create_users.rb


class DeviseCreateUsers < ActiveRecord::Migration[5.2]
  def change
    create_table :users do |t|
      ## Database authenticatable
      t.string :first_name,         null:false ,unique: true
      t.string :last_name,          null:false ,unique: true
}

So was. Lass uns gehen!

2. Lass uns

:point_down_tone1:

Konsole

 rails db:migrate

Dann. :raised_hand:

db/migrate/schema.rb


 create_table "users", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t|
    t.string "first_name", null: false
    t.string "last_name", null: false
}

Zugoooooooooooooooooooooooooooooooooooooooooooooooooo !!

:man_tone1: null: false wird validiert, aber unique: true nicht! !! !! Warum. .. .. Attai Ich habe nicht aus einem solchen Fehlercurriculum gelernt. Ah, es ist schon ein schmerzhaftes Japan.

In einem solchen Fall ist dies! !!

Lass uns MySQL sehen.

Kurz gesagt, die Datenbank wird auch nicht validiert.

Es ist ein hartes Amerika! !! !! Ich werde es schon nachschlagen. .. ..

3 ... ein paar Minuten später ...

Ich habe so etwas gefunden.

Rails-Dokument

danach. .. ..

 add_index :users, [:name], unique: true

Ist es wahr! !! !! Ich bin neu für dich! e! ?? Ich bin neu für dich! !!

Glaubst du es nicht? e? Glaubst du es nicht? Es ist nicht so leicht

db/migrate/schema.rb


 create_table "users", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t|
  t.string "first_name", null: false
  t.string "last_name", null: false
  t.index ["first_name"], name: "index_users_on_first_name", unique: true
  t.index ["last_name"], name: "index_users_on_last_name", unique: true
}

Nein, es ist echt! !! !!

:clap_tone1: Das ist möglich. Ich weiß nicht, ob jemand die gleiche Situation wie ich hat, aber es wird Ihnen hilfreich sein: Stirnrunzeln2 :! !! !!

wir sehen uns.

Recommended Posts

Warum ist es nicht validiert! ?? (einzigartig: wahre Ausgabe)
Warum ist es nicht validiert! ?? (einzigartig: wahre Ausgabe)