我正在使用Yesod和Persistent來創建一個博客(真正的原創,呃?)。Haskell持久性不同步
在某些時候,我改變了我的模型,Persistent說我試圖做的事情是不安全的,而且我必須手動完成。它說:
Database migration: manual intervention required.
The following actions are considered unsafe:
ALTER TABLE "article" DROP COLUMN "date";
所以我繼續前進,並在Postgres中運行。事實上,我已經取得了進展,並刪除的表「文章」,我得到的錯誤:
Migrating: CREATe TABLE "article"
("id" SERIAL PRIMARY KEY UNIQUE,
"title" VARCHAR NOT NULL,
"author" VARCHAR NOT NULL,
"day" DATE NOT NULL DEFAULT DATE,
"content" VARCHAR NOT NULL)
devel.hs: SqlError { sqlState = "42703"
, sqlExecStatus = FatalError
, sqlErrorMsg = "column \"date\" does not exist"
, sqlErrorDetail = ""
, sqlErrorHint = ""
}
這裏是架構目前看起來如何(如使用持久定義):
-- Blog Article
Article
title Text
author Text
day Day default=DATE
content MathJax
什麼在這裏?我需要做些什麼才能讓Postgres和Persistent重新同步?