Closed paraizo2424 closed 4 years ago
方針
[x] ハッシュタグが入っているかどうか~正規表現で~確認 https://qiita.com/goppy001/items/791c946abdb41c9495bb
[x] トリップを生成
[ ] LAN内で公開して動きを観てみたい。(発表当日) https://blog.toshimaru.net/publish-rails-app-in-lan/
[x] トリップを使用した名前とただコピペしたかどうかを判別する。
トリップの作成 gem bcryptを使って暗号化された文字列を生成すればいいと思っていたが、bcryptは同じパスワードだったとしても別の暗号化された文字列を生成することがわかった。
irb(main):001:0> u = User.new
=> #<User id: nil, name: nil, created_at: nil, updated_at: nil, password_digest: nil>
irb(main):002:0> u.password = "1234"
=> "1234"
irb(main):003:0> u.name = "ccc"
=> "ccc"
irb(main):004:0> u
=> #<User id: nil, name: "ccc", created_at: nil, updated_at: nil, password_digest: "$2a$12$cpL6nlvVGPzP52cvJ4h5buo/gA4HyJnRA3ae6A0A.VP...">
irb(main):010:0> j = User.new
=> #<User id: nil, name: nil, created_at: nil, updated_at: nil, password_digest: nil>
irb(main):011:0> j.password = "1234"
=> "1234"
irb(main):013:0* j.name = "ddd"
=> "ddd"
irb(main):014:0> j.save!
(0.1ms) begin transaction
User Create (1.9ms) INSERT INTO "users" ("name", "created_at", "updated_at", "password_digest") VALUES (?, ?, ?, ?) [["name", "ddd"], ["created_at", "2019-12-25 06:12:17.226366"], ["updated_at", "2019-12-25 06:12:17.226366"], ["password_digest", "$2a$12$gszJ3M6bqvG.CKic2HVPquA61jvU1nfz0ZzOZISd4o0OK1ZSzx/eW"]]
(9.1ms) commit transaction
=> true
調べたらrubyの組み込みライブラリにcryptメソッドというのがあった。これを使おう。
irb(main):054:0> "askdcd".crypt("13")
=> "13gF3BYquaSTM"
参考:2chトリップ
ユーザ名の文字列から#ハッシュタグを正規表現で探す方法を考えたが,正規表現が思ったより難しい。 参考にしたサイトのハッシュタグは複数のハッシュタグを検索するものだったが,トリップは最初のハッシュタグから6文字目までと考えることにした。そのため,1つのハッシュタグを検索すればいいように方針を変更。
トリップとは?? https://dic.nicovideo.jp/a/%E3%83%88%E3%83%AA%E3%83%83%E3%83%97