Can't call method ”exeute”...

シェアする

Pageを追加して公開しようとSaveボタン押したら


Can't call method "exeute" on an undefined value at
/home/sites/lolipop.jp/users/lomo.jp-jkl/web/mt4/extlib/Data/ObjetDriver/Driver/DBI.pm
Line 119.

というエラーが出た。

ManageのPagesでは一覧で表示されるのでデータは入ってるっぽいが、右端のviewでファイルのURLが表示されないのがおかしい。上記DBI.pmのLine 119を見てみると、


119 $sth->execute(@{ $stmt->{bind} });

となっている。Perlはよくわからんが、前後から察するにSQL文の実行時にエラーが出てるんだろう。Perlはわかr(ry)なのでDBを見てみる。


sqlite> select * from mt_entry;
1438|0.0|0.0|tag:jkl.lomo.jp,2007://1.1438|1|2007-09-17 18:10:57|about|1||page|__default__|(ry

やっぱりデータ自体は保存されている。とするとファイルパスが保存されていなさそうだ。


sqlite> select * from mt_fileinfo where fileinfo_archive_type = "Page";
sqlite>

やっぱり無い。SQL文実行中に何かしちゃったかな、と思ったがmt_fileinfoのHeaderを見てたらテンプレートの指定をするカラムがあった。そういや設定したっけなあとテンプレートのpageを見たら出力ファイルの指定をしてない。ファイル名指定したら成功、手抜きするんじゃなかったなあ。

Sponsored Link

シェアする

フォローする

コメント

  1. おーたむ より:

    はじめまして。おーたむです。

    現在自サイトをMovable type4にバージョンアップしてるのですが、ブログ記事アーカイブを再構築するとエラーがでます。
    それを調べていてこのサイトにたどり着きました。
    そのエラーが、このエントリーにある「Can’t call method ・・・」と同じなのですが、「ファイル名指定したら成功」とあるのですが具体的にどこを修正したのか教えていただけないでしょうか?

    お手数おかけして申し訳ないのですが、教えていただけるとうれしいです。よろしくお願いします。

  2. jklryo より:

    もう遅いかな?今気がつきました。

    いじったところは
    Edit Template -> Page -> Archive Mapping
    だったかと思います。エラーが出たときは空欄でした。

    ただ、同じエラーメッセージだからといって必ずしも原因が同じとはかぎらないですからね。難しいところです。