質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

Play Framework

Play Frameworkは、現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

Q&A

0回答

455閲覧

Scala(Play Framework)のCompilation errorが解決できない

nezu

総合スコア15

Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

Play Framework

Play Frameworkは、現代の web アプリケーション開発に必要なコンポーネント及び API を統合した生産性の高い Java と Scala の web アプリケーションフレームワークです。

0グッド

1クリップ

投稿2019/03/11 04:22

編集2019/03/11 04:25

前提・実現したいこと

scala(Play Framework)で簡単な投稿機能を作っています。
その実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

missing argument list for method apply in object add Unapplied methods are only converted to functions when a function type is expected. You can make this conversion explicit by writing `apply _` or `apply(_,_)(_)` instead of `apply`.

該当のソースコード

HomeController

131 )) 232 } 333 434 def add() = Action {implicit request => 535 Ok(views.html.add( 636 "フォームを記入してください。", 737 form 838 )) 939 }

関連するソースコード

HomeController

1package controllers 2 3import java.sql._ 4import javax.inject._ 5import play.api._ 6import play.api.mvc._ 7import play.api.data._ 8import play.api.data.Forms._ 9import play.api.db._ 10import PersonForm._ 11 12@Singleton 13class HomeController @Inject()(db: Database, cc: MessagesControllerComponents) extends MessagesAbstractController(cc) { 14 def index() = Action {implicit request => 15 var msg = "database record:<br><ul>" 16 try { 17 db.withConnection { conn => 18 val stmt = conn.createStatement 19 val rs = stmt.executeQuery("SELECT * from people") 20 while (rs.next) { 21 msg += "<li>" + rs.getInt("id") + ":" + rs.getString("name") + "</li>" 22 } 23 msg += "</ul>" 24 } 25 } catch { 26 case e:SQLException => 27 msg = "<li>no record...</li>" 28 } 29 Ok(views.html.index( 30 msg 31 )) 32 } 33 34 def add() = Action {implicit request => 35 Ok(views.html.add( 36 "フォームを記入してください。", 37 form 38 )) 39 } 40 41 def create() = Action { implicit request => 42 val formdata = form.bindFromRequest 43 val data = formdata.get 44 try 45 db.withConnection { conn => 46 val ps = conn.prepareStatement( 47 "insert into people values (default, ?, ?, ?)") 48 ps.setString(1, data.name) 49 ps.setString(2, data.mail) 50 ps.setString(3, data.tel) 51 ps.executeUpdate 52 } 53 catch { 54 case e: SQLException => 55 Ok(views.html.add( 56 "フォームに入力してください。", 57 form 58 )) 59 } 60 Redirect(routes.HomeController.index) 61 } 62}

PersonForm

1package controllers 2 3object PersonForm { 4 import play.api.data._ 5 import play.api.data.Forms._ 6 7 case class Data(name: String, mail: String, tel: String) 8 9 val form = Form( 10 mapping( 11 "name" -> text, 12 "mail" -> text, 13 "tel" -> text 14 )(Data.apply)(Data.unapply) 15 ) 16}

試したこと

applyをapply _apply(_,_)(_)に変えたりしましたがエラーは治りませんでした。

補足情報(FW/ツールのバージョンなど)

IntelliJ IDEAで開発を行っております。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問