Tower 0.4.2-20の使用:例に従い、コードはすべて生成されたようですが、テストを実行すると、ファクトリ定義されていないエラーが発生します。
具体的には:
tower new app
cd app
npm install
tower generate scaffold Post title:string body:text
tower generate scaffold User firstName:string lastName:string email:string
npm test
収量:
1) PostsController routes show:
actual expected
/posts/undefined
2) PostsController routes edit:
actual expected
/posts/undefined/edit
3) PostsController #index "before each" hook:
Error: Factory 'post' doesn't exist.
at Function.Tower.Factory.options [as get] (/home/jeremy/repos/tower/lib/tower-support/shared/factory.js:84:13)
at Function.Tower.Factory.factory [as create] (/home/jeremy/repos/tower/lib/tower-support/shared/factory.js:73:17)
at global.factory (/home/jeremy/test/towapp/test/server.coffee:21:42)
at Context.get.format (/home/jeremy/test/towapp/test/cases/controllers/server/postsControllerTest.coffee:46:16)
at Hook.Runnable.run (/home/jeremy/test/towapp/node_modules/mocha/lib/runnable.js:187:15)
at next (/home/jeremy/test/towapp/node_modules/mocha/lib/runner.js:201:10)
at Runner.hook (/home/jeremy/test/towapp/node_modules/mocha/lib/runner.js:212:5)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
私はこれを自分でデバッグしようとし、GithubからTowerをビルドしてそれにリンクしました。上記のように、Towerのリポジトリのバージョンのコードを使用していますが、そこでも行き詰まっています。デバッグの印刷/ログステートメントを作成する正しい方法がわかりません。console.logとthis.debug.logを試しましたが、どちらの場合も、ログメッセージがコンソールまたはログファイルに書き込まれることはありません。実際、ログディレクトリにログが作成されることはありません。
編集して追加:もう少し進歩しました。Tower.Factory.defineメソッドが呼び出されていません。ただし、Factoryクラスは存在します。
Tower.Factory.define 'post', ->
title: Tower.random('words')