デバイスを使用して、彼の電子メールに基づいて自動的にユーザー名を作成することは可能ですか?
登録ページには、メールとパスワードのフィールドしかありません。
たとえば、ユーザーが emailrandomname@gmail.com
で新しいアカウントを作成すると、ユーザー名が自動的にrandomname
. どうすればそれを達成できますか?
デバイスを使用して、彼の電子メールに基づいて自動的にユーザー名を作成することは可能ですか?
登録ページには、メールとパスワードのフィールドしかありません。
たとえば、ユーザーが emailrandomname@gmail.com
で新しいアカウントを作成すると、ユーザー名が自動的にrandomname
. どうすればそれを達成できますか?
のような正規表現を使用して、電子メール アドレスの最初の部分を取得できます。これにより、記号^[^@]+
の前の文字列の先頭からすべてが返されます。@
^ /* start of string or line */
[^@] /* character class capturing everything except @ */
+ /* match must happen atleast one time */
ユーザー名をデータベースに追加するには、callbackを使用できます。
class User < ActiveRecord::Base
before_create :set_username
private
def set_username
self.username = self.email[/^[^@]+/]
end
end