AWSへのデプロイ後、ModelがNot Foundとなる

940 views
Skip to first unread message

Kazuho Masago

unread,
Feb 5, 2014, 1:32:48 AM2/5/14
to fuelp...@googlegroups.com
皆様
はじめて投稿させていただきます。

FuelPHPで作成したシステムをAWS上のStaging環境にデプロイし、設定したところ
Class 'Model_User' not found
というエラーが表示され苦慮しています。

ローカル環境はVagrantのcentOSで開発していたもので、こちらでは正常に動いています。
昨日、EC2(Amazon linuxを使用)にデプロイし環境を設定したとことこのようなエラーが発生し、色々と試したのですが解決できずにおります。

尚、本処理の前にsimple authを使用し認証をかけておりますが、こちらは正常に動作しています。
(同一のusersテーブルを見ています)

解せないのは、試しにEC2上でoilコマンドを用いて別のモデルを作成したとこと、こちらのモデルついては正常に読込まれます。

お手数ですが、お知恵を拝借できれば幸いです。
よろしくお願いいたします。


Kazuho Masago

unread,
Feb 5, 2014, 3:07:41 AM2/5/14
to fuelp...@googlegroups.com
自己レスです。

原因は、ファイル名の大文字、小文字の区別の問題でした。
#ローカル環境はcentOSではなく、ubuntuでした。

ローカル環境において、ファイル名をキャメルケースにしておりましたが、この形式だと、EC2に載せた段階で、Modelを探しに行く際に対象とならないようで、ファイル名を全て小文字にしてやると、正常に動作しました。

お騒がせしました。


2014年2月5日水曜日 15時32分48秒 UTC+9 Kazuho Masago:

Kenji Suzuki

unread,
Feb 5, 2014, 3:29:27 AM2/5/14
to fuelp...@googlegroups.com
Kenji です。

はじめまして。


そんな Ubuntu があるんですね。ファイルシステムは何をお使いなんでしょう?

ちなみに FuelPHP 1.x ではファイル名はすべて小文字という規約になってます。


// Kenji
> --
> このメールは Google グループのグループ「fuelphp.jp」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、fuelphp_jp+...@googlegroups.com にメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

Kazuho Masago

unread,
Feb 5, 2014, 6:27:20 AM2/5/14
to fuelp...@googlegroups.com
返信ありがとうございます。
#しかも、初返信がKenjiさんからとは感激です!!

ファイルシステムを確認してみました。
Vagrantの共有ディレクトリを使用している為、vboxsfのようです。
ちなみに、Vagrantは、vagrant-lampという手軽そうなものを選んだので何がしかの設定がされている可能性もあります。

そもそも、confを共有フォルダに向かせているのに強引なのかもしれませんね。。。
ただ、サクッとホストOSとやりとりできてしまうので、とても止められそうにありませんがw



ファイル名は全て小文字とのこと。勉強になりました。
まだ、Fuelは駆け出しなものでご容赦ください。

皆さん、複数の単語で構成されるモデルの場合に、ファイル名はどうしているのでしょうか?
oil g model hoge_hoge name:varchar[255]
とかやると、modelの下にサブフォルダが切られてしまうかと思います。
なので、キャメルケースに直すとFuelが認識してくれたので、それを使ってしまいました。
初歩的な部分なのですが、悩ましいところです。



私事ですが、FuelPHP修行に励んで行きたいと思っております。
#何がしかの形で、コミュニティーにも貢献して行けるようになれればいいなぁ。
今後とも、よろしくお願いします。

2014年2月5日水曜日 17時29分27秒 UTC+9 Kenji Suzuki:
> このグループから退会し、メールの受信を停止するには、fuelphp_jp+unsubscribe@googlegroups.com にメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

ikezaki

unread,
Feb 5, 2014, 7:59:13 AM2/5/14
to fuelp...@googlegroups.com
池崎@hackohです。

私は、
とかやると、modelの下にサブフォルダが切られてしまうかと思います。
これを良しとして受け入れています。
fuel/app/classes/model/hoge/hoge.php ってことですよね?


私事ですが、FuelPHP修行に励んで行きたいと思っております。
今後とも、宜しくお願いします。
このグループから退会し、メールの受信を停止するには、fuelphp_jp+...@googlegroups.com にメールを送信します。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

Kenji Suzuki

unread,
Feb 5, 2014, 7:51:22 PM2/5/14
to fuelp...@googlegroups.com
Kenji です。


On Wed, 5 Feb 2014 03:27:20 -0800 (PST)
Kazuho Masago <mas...@gmail.com> wrote:

> 返信ありがとうございます。
> #しかも、初返信がKenjiさんからとは感激です!!

どういたしまして。


> ファイルシステムを確認してみました。
> Vagrantの共有ディレクトリを使用している為、vboxsfのようです。

なるほど。ホスト OS のファイルシステムが大文字小文字を区別しないものなので、
そうなるんですね。となると、Windows でも Mac でもそうなりますね。

盲点ですね。


> ちなみに、Vagrantは、vagrant-lampという手軽そうなものを選んだので何がしかの設定がされている可能性もあります。
>
> そもそも、confを共有フォルダに向かせているのに強引なのかもしれませんね。。。
> ただ、サクッとホストOSとやりとりできてしまうので、とても止められそうにありませんがw

それが一番お手軽なので多くのユーザがそうしていると思います。

> ファイル名は全て小文字とのこと。勉強になりました。
> まだ、Fuelは駆け出しなものでご容赦ください。

もともと、開発環境では動作して本番では動作しないというこの問題を避けるために、
すべて小文字という規約が導入されたものだと思います。

ただ、全部小文字だと長いと読みにくいというのはありますし、今時はクラス名と
ファイル名の大文字小文字を一致させるのが普通なので FuelPHP 2.0 では変更
されています。


// Kenji
> > > このグループから退会し、メールの受信を停止するには、fuelphp_jp+...@googlegroups.com<javascript:>にメールを送信します。
> > > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
> >
>
> --
> このメールは Google グループのグループ「fuelphp.jp」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、fuelphp_jp+...@googlegroups.com にメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

Kazuho Masago

unread,
Feb 6, 2014, 12:27:35 AM2/6/14
to fuelp...@googlegroups.com
こんにちは。

これを良しとして受け入れています。
fuel/app/classes/model/hoge/hoge.php ってことですよね?

なるほど。そう言う考え方もできますね。
ディレクトリ名を修飾子として考えるわけか。
fuel/app/classes/model/hoge/hoge.php
fuel/app/classes/model/fuga/hoge.php
のhogeクラスは別の概念ということで扱えるならそれはそれでいいのかもしれないという気がしてきました。

各ディレクトリが一種のドメインと考えると、ドメイン跨がりの部分は、その上位のドメインで決めてしまい継承しちゃえばいいんですね。



2014年2月5日水曜日 21時59分13秒 UTC+9 Ikezaki Shintaro:

Kazuho Masago

unread,
Feb 6, 2014, 12:30:53 AM2/6/14
to fuelp...@googlegroups.com
> もともと、開発環境では動作して本番では動作しないというこの問題を避けるために、 
> すべて小文字という規約が導入されたものだと思います。 

なるほどねぇ、、、
ほんと良く考えられてるなぁ。



> ただ、全部小文字だと長いと読みにくいというのはありますし、今時はクラス名と 
> ファイル名の大文字小文字を一致させるのが普通なので FuelPHP 2.0 では変更 
> されています。 

2.0系の機会をみて勉強してみたいです。
まずは、1.7系をいじり倒すことからはじめます!



2014年2月6日木曜日 9時51分22秒 UTC+9 Kenji Suzuki:
> > > このグループから退会し、メールの受信を停止するには、fuelphp_jp+unsubscribe@googlegroups.com<javascript:>にメールを送信します。
> > > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
> >
>
> --
> このメールは Google グループのグループ「fuelphp.jp」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、fuelphp_jp+unsubscribe@googlegroups.com にメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

Kenji Suzuki

unread,
Feb 6, 2014, 7:29:31 PM2/6/14
to fuelp...@googlegroups.com
Kenji です。


On Wed, 5 Feb 2014 03:27:20 -0800 (PST)
Kazuho Masago <mas...@gmail.com> wrote:

> 私事ですが、FuelPHP修行に励んで行きたいと思っております。
> #何がしかの形で、コミュニティーにも貢献して行けるようになれればいいなぁ。

それなら、わからないことがあったら、ここで質問してもらうのがいいんじゃない
かと思います。そうすると、後から Fuel を始める人の参考になるかも知れません。

https://groups.google.com/forum/#!forum/fuelphp_jp


// Kenji
Reply all
Reply to author
Forward
0 new messages