Authkit: การแก้หน้าลงทะเบียนเข้าอย่างง่าย

Posted March 01, 2009 at Pylons66
หลังจากที่ผมใช้ AuthKit แบบใช้ form มาสักพัก มันก็เป็นหน้าขาวๆ ธรรมดาก็เลย อยากเปลี่ยนหน้านั้นให้ดูเหมือนหน้าอื่นๆ ผู้ใช้จะได้ไม่งงด้วย การทำอย่างนั้นก็ก็ต้องมีวิธีพิเศษนิดหน่อย ซึ่งในที่สุดก็หาวิธีได้จาก http://jimmyg.org/2007/08/14/pylons-mako-templates-in-authkit/ และคำแนะพร้อม code ของ @sirn แต่เพิ่มเก็บไว้ดูเอง ผมก็เลยทำตัวอย่างที่ง่ายขึ้นอีก เพื่อความเข้าใจมากกว่าเพื่อเอาไปใช้จริงๆ ขั้นตอนในการแก้ฟอร์มที่ใช้ลงทะเบียนเข้าคือ แก้ In development.ini เพิ่ม “authkit.form.template.obj” เข้าไป authkit.setup.enable = true authkit.setup.method = form, cookie authkit.form.authenticate.user.type = basaasa.users.authkit_elixir_driver:UsersFromDatabase authkit.form.authenticate.user.data = basaasa.model authkit.cookie.secret = SomeSec authkit.cookie.signoutpath = /auth/signout authkit.form.template.obj = basaasa.lib.auth:make_template #เพิ่ม เพิ่ม auth.py เข้าไปใน /basaasa/lib auth.py: def make_template(): return """ Signin
BasaAsa: Signin

สร้างหน้าลงทะเบียนเข้าใช้งาน สำหรับ AuthKit OpenID

Posted March 04, 2009 at Pylons66
ผมใช้ AuthKit และ OpenID บนโปรแกรมของผมที่เขียนด้วย พอเริ่มจะได้ได้แล้วผมก็อยากจะแก้หน้าลงทะเบียนเข้าใช้งาน (Sign in) สักหน่อย. จริงๆ แล้วก็แก้ได้ง่ายๆ เพราะว่าใช้วิธีคล้ายๆ กับการสร้างหน้าลงทะเบียนเข้าใช้งานใหม่สำหรับ AuthKit + form นอกจากจะเขียนถึงตัวอย่างแล้ว ผมก็จะพยายามอธิบายด้วยนิดหน่อย สมมุติว่าใช้ AuthKit + OpenID ได้อยู่แล้วจะแก้หน้าลงทะเบียนเข้าใช้ใหม่ผมก็เริ่มแก้ไขจาก development.ini ให้ชี้ไปที่ template ใหม่ authkit.openid.template.obj = topenid.lib.signin:make_template นอกจากนั้นก็เพิ่ม 2 ไฟล์เข้าไป ได้แก่ topenid/lib/signin.py และ topenid/template/signin.html topenid/lib/signin.py: # This file is based on example from http://jimmyg.org/2007/08/14/pylons-mako-templates-in-authkit/ from pylons.templating import Buffet from pylons import config import topenid.lib.helpers as h class MyBuffet(Buffet): [...]