シードファイルをPhoenixアプリケーションで使用する場合、シードを複数回実行するとテーブルのIDを再起動できますか? (種子が複数回実行された場合、レコードは積み上げないように)Phoenix/Ecto - シードファイルのアイデンティティを再起動
がPhoenixApp.Repo.delete_all PhoenixApp.Role
PhoenixApp.Repo.insert!(%PhoenixApp.Role{role: "admin"})
PhoenixApp.Repo.insert!(%PhoenixApp.Role{role: "non-admin"})
最初の行はテーブルをクリアし、そして:
例えば、私は現在、以下の種子で働いています次の行はシードレコードを作成します。このコードを一度実行すると、通常のように、自動増分された主キー '1'と '2'を持つ2つのレコードが作成されます。アイデンティティがなかったのでしかし、私は、このような
PhoenixApp.Repo.insert!(%PhoenixApp.Role{role: "superuser"})
として、後でテーブルに別のエントリを追加したい場合は、行のIDが今、「3」、「4」、および「5」になります再開されました。
EctoにはテーブルIDも再起動するコマンドがありますか?可能であれば、IExを使用してテーブルにレコードを追加することができますが、IDを再起動することをお勧めします。
おかげで再び、@Dogbertを! – skwidbreth