1. ホーム
  2. ruby-on-rails

[解決済み] Rails / Haml: 投稿フォームを作成するには?

2022-02-09 17:16:50

質問内容

簡単なフォームを作ろうとしているのですが、あまりうまくいきません。 これは私の現在のフォームのコードです。

%form{ :controller => 'tool', :action => 'activation', :method => 'post' }
  %table{ :border => 0, :width => "100%", :height => "100%" }
    %tr{ :align => "center", :valign => "center" }
      %td
        %input{ :type => "text", :name => "accountName" }
        %input{ :type => "submit", :name => "submit", :value => "login" }

フォームからデータを送信しようとすると、このような url が表示されます。 10.0.0.2:3000/activation . 私は、ルートを tool#activation を活性化させたいのですが、それは間違った方法です。 10.0.0.2:3000/tool/activation しかし :action => 'tool/activation' も、私が理解する限りでは悪い方法です。

アドバイスをお願いします。

どのように解決するのですか?

railsヘルパータグを使用する必要があります。

= form_tag tool_activation_path, :method => :post do
    # The table
        # The row
            # The data
                = text_field_tag "accountName", ""
                = submit_tag "Submit"

詳しくはこちらをご覧ください。 http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html

また、レイアウトのスタイルに不必要なテーブルを使わないようにする必要があります。代わりに、CSSを使用することを検討してください。