プロジェクト

全般

プロフィール

Enhancement(機能追加・改善) #2077

新しい紹介文があることに気づけない

Yuya Watanabeほぼ13年前に追加. 12年以上前に更新.

ステータス:
Pending Review(レビュー待ち)
優先度:
Normal(通常)
担当者:
開始日:
2011-05-11
期日:
進捗率:

50%


説明

概要

新しく紹介文が書かれた場合に気づけない.

改善案

紹介文が新しく書かれたときにユーザのホーム画面に新着の紹介文の通知を行う機能を追加する.

対象バージョン

opIntroFriendPlugin 1.0.1

履歴

#1 Yuya Watanabeほぼ13年前に更新

  • 対象バージョンv0.9.2.1 にセット

#3 Yuya Watanabeほぼ13年前に更新

確認すべき項目一覧
・新規に紹介文A作成⇒未読1件(新着表示)
・紹介文を読む⇒未読なし(表示消える)
・紹介文Aを編集⇒未読1件(新着表示)
・紹介文を読む前に紹介文B作成⇒未読2件(新着表示)
・紹介文を読む前に紹介文A編集⇒未読2件のまま(新着表示)
・紹介文を読む前に紹介文B削除⇒未読1件(新着表示)
・紹介文を読む⇒未読なし(表示消える)
・紹介文A削除⇒未読なし(表示なし)
・あらためて紹介文A作成⇒未読1件(新着表示)
・紹介文を読む⇒未読なし(表示消える)
・あらためて紹介文B作成⇒未読1件(新着表示)
・紹介文を読む前に紹介文A編集⇒未読2件(新着表示)
・紹介文を読む⇒未読なし(表示消える)
・紹介文を読む前に紹介文C作成⇒未読1件(新着表示)
・紹介文を読む前に紹介文A削除⇒未読1件のまま(新着表示)

#4 Masato Nagasawaほぼ13年前に更新

  • 対象バージョンv0.9.2.1 から 184 に変更

#5 Masato Nagasawaほぼ13年前に更新

  • 対象バージョン184 から v0.9.2.1 に変更

#6 Masato Nagasawaほぼ13年前に更新

  • ステータスNew(新規) から Rejected(差し戻し) に変更
  • 進捗率0 から 50 に変更

新規にテーブルを作成していますが、すでにインストール済みの場合のマイグレーションでテーブルが作成されません。
テーブルを作成するためのマイグレーションファイルの追加をお願いします。

#7 Masato Nagasawaほぼ13年前に更新

  • 対象バージョンv0.9.2.1 から v1.0.0 に変更

#8 Yuya Watanabe12年以上前に更新

  • 対象バージョン を削除 (v1.0.0)

#9 Yuya Watanabe12年以上前に更新

  • 担当者Yuya Watanabe にセット

#10 Yuya Watanabe12年以上前に更新

  • ステータスRejected(差し戻し) から Accepted(着手) に変更

新規インストール時のDB構造が以下のようになっており,この構造にするために以下のマイグレートスクリプトを書き,マイグレート実行後に同じ構造になることを確認しました.

DB構造

mysql> show create table intro_friend_unread;
+---------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table               | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                          |
+---------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| intro_friend_unread | CREATE TABLE `intro_friend_unread` (
  `member_id` int(11) NOT NULL default '0',
  `read_at` datetime NOT NULL,
  `count` int(10) unsigned NOT NULL default '0',
  `created_at` datetime NOT NULL,
  `updated_at` datetime NOT NULL,
  PRIMARY KEY  (`member_id`),
  CONSTRAINT `intro_friend_unread_member_id_member_id` FOREIGN KEY (`member_id`) REFERENCES `member` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+---------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

マイグレートスクリプト

class Revision6_addUnreadTable extends opMigration
{
  public function up()
  {
    $export = Doctrine_Manager::connection()->export;

    $export->createTable('intro_friend_unread',
      array(
        'member_id' => array('type' => 'integer', 'length' => 4, 'primary' => true, 'notnull' => true, 'default' => 0),
        'read_at' => array('type' => 'timestamp', 'notnull' => true),
        'count' => array('type' => 'integer', 'length' => 4, 'unsigned' => true, 'notnull' => true, 'default' => 0),
        'created_at' => array('type' => 'timestamp', 'notnull' => true),
        'updated_at' => array('type' => 'timestamp', 'notnull' => true),
      )
    );

    $export->createForeignKey('intro_friend_unread', array(
      'name' => 'intro_friend_unread_member_id_member_id',
      'local' => 'member_id',
      'foreign' => 'id',
      'foreignTable' => 'member',
      'onDelete' => 'CASCADE',
    ));
  }
}

#11 Yuya Watanabe12年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更

#12 Yuya Watanabe12年以上前に更新

  • 説明 を更新 (diff)

他の形式にエクスポート: Atom PDF