add_index

Witam,

pojawił się pierwszy problem podczas budowania apki, chcąc stworzyć index kolumny niestety wyrzuca mi jakiś błąd, utknąłem i stoje w miejscu długi czas …

class CreateUzytkowniks < ActiveRecord::Migration
  def up
    create_table :uzytkowniks do |t|
        t.string "imie", :limit=>20
        t.string "naziwsko", :limit=>60
        t.string "login", :limit=>25
        t.string "email", :limit=>100, :default=>"", null: false    
        t.string "password_digest"
      t.timestamps 
    end
    add_index("uzytkowniks", "Uzytkownik")
  end

  def down
      drop_table :uzytkowniks
  end
end

Bład to :

C:\server\platforma>rake db:migrate
DL is deprecated, please use Fiddle
== 20150324180132 CreateUzytkowniks: migrating ================================
-- create_table(:uzytkowniks)
   -> 0.0010s
-- add_index("uzytkowniks", "Uzytkownik")
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: table uzytkowniks has no column named Uzytkownik: CREATE
 INDEX "index_uzytkowniks_on_Uzytkownik" ON "uzytkowniks" ("Uzytkownik")C:/serve
r/platforma/db/migrate/20150324180132_create_uzytkowniks.rb:11:in `up'
C:in `migrate'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

Jakiś pomysł ?

Po usunięciu :

add_index(“uzytkowniks”, “Uzytkownik”)

Wszystko jest okej.

  1. używaj angielskiego!
  2. w błędzie jest napisane, ze nie ma kolumny “Uzytkownik” w tabeli “uzytkowniks”.

Jeśli nie znasz angielskiego, to najpierw się nauczyć go. Dopóki działasz z konwencją, to jest wszystko ok, ale gdy pomijasz konwencję, to tak jakbyś uderzał się młotkiem po głowie. :wink:

Tak, już zrobiłem, przepraszam, teraz widzę, że głupie pytanie.