私はDBIx :: Class :: Schemaに問題があります。私はdbとテーブルを作成しました:User、Post、...。それから私は、端末perl DBIx :: Class :: Schema
でこれをやっコマンドSchema.pmと、それにつながるパスとLIB ::アプリケーション::スキーマを作りました。 (テーブルクラスで)。
これはSchema.pm
use utf8;
package App::Schema;
use strict;
use warnings;
use base 'DBIx::Class::Schema';
__PACKAGE__->load_namespaces;
1;
によって生成され、私は、スキーマを使用しました。このファイルで
use lib::App::Schema;
my $schema = App::Schema->connect("dbi:mysql:dbname=my_db", "root", "password");
my @m = $schema->resultset('User')->all;
のgetエラー
DBIx::Class::Schema::source(): Can't find source for User at lib/Local/ThisFile.pm line 26
のすべての行から
id
列を出力しますか?あなたのスキーマは 'Habr :: Schema'と呼ばれ、' lib :: App :: Schema'をロードしようとしています。 'lib'はモジュール名の一部ではありません。あなたの環境が知っておくべき_libraryディレクトリ_です。あなたのメインプログラムの先頭に 'lib 'lib'; 'を置くことによって、 – simbabque