Browse Source

feat: posts.thumbnail_base を Nullable に(#75) (#198)

Merge remote-tracking branch 'origin/main' into feature/075

#75

Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: https://git.miteruzo.com/miteruzo/btrc-hub/pulls/198
main
みてるぞ 2 days ago
parent
commit
3f2c0a52b9
4 changed files with 31 additions and 4 deletions
  1. +1
    -1
      backend/app/controllers/posts_controller.rb
  2. +27
    -0
      backend/db/migrate/20251230143400_make_thumbnail_base_nullable_in_posts.rb
  3. +2
    -2
      backend/db/schema.rb
  4. +1
    -1
      backend/lib/tasks/sync_nico.rake

+ 1
- 1
backend/app/controllers/posts_controller.rb View File

@@ -88,7 +88,7 @@ class PostsController < ApplicationController
original_created_from = params[:original_created_from]
original_created_before = params[:original_created_before]

post = Post.new(title:, url:, thumbnail_base: '', uploaded_user: current_user,
post = Post.new(title:, url:, thumbnail_base: nil, uploaded_user: current_user,
original_created_from:, original_created_before:)
post.thumbnail.attach(thumbnail)
if post.save


+ 27
- 0
backend/db/migrate/20251230143400_make_thumbnail_base_nullable_in_posts.rb View File

@@ -0,0 +1,27 @@
class MakeThumbnailBaseNullableInPosts < ActiveRecord::Migration[7.0]
def up
change_column_null :posts, :thumbnail_base, true

execute <<~SQL
UPDATE
posts
SET
thumbnail_base = NULL
WHERE
thumbnail_base = ''
SQL
end

def down
execute <<~SQL
UPDATE
posts
SET
thumbnail_base = ''
WHERE
thumbnail_base IS NULL
SQL

change_column_null :posts, :thumbnail_base, false
end
end

+ 2
- 2
backend/db/schema.rb View File

@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.

ActiveRecord::Schema[8.0].define(version: 2025_12_29_022100) do
ActiveRecord::Schema[8.0].define(version: 2025_12_30_143400) do
create_table "active_storage_attachments", charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t|
t.string "name", null: false
t.string "record_type", null: false
@@ -86,7 +86,7 @@ ActiveRecord::Schema[8.0].define(version: 2025_12_29_022100) do
create_table "posts", charset: "utf8mb4", collation: "utf8mb4_0900_ai_ci", force: :cascade do |t|
t.string "title", null: false
t.string "url", limit: 2000, null: false
t.string "thumbnail_base", limit: 2000, null: false
t.string "thumbnail_base", limit: 2000
t.bigint "parent_id"
t.bigint "uploaded_user_id"
t.datetime "created_at", null: false


+ 1
- 1
backend/lib/tasks/sync_nico.rake View File

@@ -49,7 +49,7 @@ namespace :nico do
unless post
title = datum['title']
url = "https://www.nicovideo.jp/watch/#{ datum['code'] }"
thumbnail_base = fetch_thumbnail.(url) || '' rescue ''
thumbnail_base = fetch_thumbnail.(url) rescue nil
post = Post.new(title:, url:, thumbnail_base:, uploaded_user: nil)
if thumbnail_base.present?
post.thumbnail.attach(


Loading…
Cancel
Save