Próbuję zbudować system "po prostu kliknij swoje imię aby się zalogować" za pomocą auth_logic. Mój model użytkownika ma adres e-mail i pole nazwy. Aby się zalogować, wystarczy:# <UserSession: {: unauthorized_record => "<protected>"}>
UserSession.create(@user, true)
Niestety, nie powoduje to utworzenia sesji. Korzystanie z debugera Znalazłem wiadomość:
#<UserSession: {:unauthorized_record=>"<protected>"}>
Moje modelu użytkownik ma tylko jedną linię:
acts_as_authentic
linia sesja Filmaster to, co znalazłem gdzieś. Nie jestem pewien, co robi, a ja próbowałem i bez:
class UserSession < Authlogic::Session::Base
def to_key
new_record? ? nil : [ self.send(self.class.primary_key) ]
end
end
Baza danych (nie jestem też pewien, czy jest potrzebna, że tabela user_sessions):
create_table "sessions", :force => true do |t|
t.string "session_id", :null => false
t.text "data"
t.datetime "created_at"
t.datetime "updated_at"
end
add_index "sessions", ["session_id"], :name => "index_sessions_on_session_id"
add_index "sessions", ["updated_at"], :name => "index_sessions_on_updated_at"
create_table "user_sessions", :force => true do |t|
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "users", :force => true do |t|
t.datetime "created_at"
t.datetime "updated_at"
t.string "persistence_token"
t.string "email"
t.string "name"
end
I m przy użyciu Rails 3.0.9 i mój Gemfile mówi (próbowałem zarówno normalne i Authlogic gem Github):
gem 'rails', '3.0.9'
gem 'sqlite3'
gem "authlogic" #, :git => 'git://github.com/odorcicd/authlogic.git', :branch => 'rails3'
Here jest reszta kodu źródłowego.
Miałem ten problem kilka dni temu na podobny projekt i "po prostu odszedł" w pewnym momencie. Po prostu nie pamiętam jak.
Wszelkie pomysły? To doprowadza mnie do szału ...
Sjors Hi, Mam ten sam problem. Czy znalazłeś rozwiązanie tego problemu? – Dorian
@dorian, jeśli potrzebujesz tylko logowania na Twitterze, ten klejnot czyni go banalnym: https://github.com/mislav/twitter-login –
Mając ten sam problem, jak również. Jakieś rozwiązanie? –