Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

引数に大文字が使われている場合、helpページの埋め込みが上手く行かない #21

Open
suzuki-shm opened this issue Jan 27, 2016 · 0 comments

Comments

@suzuki-shm
Copy link
Contributor

状況

stanza.rb側で入力する引数に大文字を混じえる。例として初期状態のテンプレートを次のように書き換える。

class TestStanza < TogoStanza::Stanza::Base
  property :greeting do |inputText|
    inputText
  end
end

これは直接ブラウザからアクセスすると問題なく機能する。metadata.jsonも次のように書き換える。

{
  "id": "test",
  "label": "",
  "definition": "",
  "parameter": [
    {
      "key": "inputText",
      "example": "Hoge",
      "description": "",
      "required": true
    }
  ],
  "type": "Stanza",
  "context": "",
  "display": "",
  "provider": "provider of this stanza",
  "license": "",
  "author": "author name",
  "address": "name@example.org",
  "contributor": [],
  "created": "2016-01-27",
  "updated": "2016-01-27"
}

togostanza-gem Ver. 2.0以降ではhelpページがmetadata.jsonから生成される。生成されるhtmlのコードは以下の通り。

<h2>Sample:</h2>                                                                                                                                 
<pre><code>&lt;div data-stanza-inputText=&quot;Hoge&quot; data-stanza=&quot;http://localhost:9292/stanza/test&quot;&gt;&lt;/div&gt;</code></pre> 
<p>                                                                                                                                              
  The above <code>&lt;div&gt;</code> will automatically embed the following Stanza in your HTML page.                                            
</p>                                                                                                                                             
<div data-stanza-inputText="Hoge" data-stanza="http://localhost:9292/stanza/test"></div>                                                         

しかし、これで埋め込まれているスタンザは実際に動作する際に、何故か引数の大文字部分が小文字に置換されてしまう。埋め込まれているフレームを新規タブで開いた時には、下記のようなURLで開かれる。

http://localhost:9292/stanza/test?inputtext=Hoge

確認したこと

  • metadata.jsonから生成されるstanza:usageがおかしいのではないかと思い、/lib/togostanza/stanza/base.tb中のclass Base のmetadataメソッド中でprint出力でチェックしてみたが、平常通り大文字で出力された。

対策

  • 引数に大文字を使用しない
  • hamlのエンジンの問題なのかもしれないですが、よく分からないです。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant