私はSinatraアプリケーションからERBテンプレートを使用してアクセスする必要のある標準jQuery-MobileマルチページHTMLファイルを用意しています。ファイル内のブックマークやアンカーにアクセスする方法がわかりません。私が取得することで、Ruby Sinatra erbテンプレートを使用してjQuery Mobile(jqm)のマルチページHTMLにアクセス
get '/login' do
erb :'admin.html#login_page'
end
:しかし
No such file or directory @ rb_sysopen - .../views/admin.html#login_page.erb:
私がアクセスしようとしているファイルがある
admin.html.erb
私のコードは単純です。
login_pageのブックマークがあります。
私がアクセスしようとしているHTMLテンプレートの部分は次のとおりですが、他のページも含まれています。
<div data-theme="b" data-role="page" id="login_page">
<%= partial :'main-header.html', locals: {page: 'Management Console Login'} %>
<div class="ui-content">
<a href="#login" data-rel="popup" class="ui-btn ui-btn-inline ui-corner-all ui-icon-check ui-btn-icon-left">Admin
Login</a>
<div data-role="popup" data-history="false" id="login" class="ui-content" style="min-width:250px;">
<form action='/login_process' method='post' data-ajax='false'>
<div data-role="controlgroup">
<h3>Administrative Login</h3>
<label for="logon" class="ui-hidden-accessible">Logon:</label>
<input type="text" name="user" id="logon" placeholder="Logon">
<label for="password" class="ui-hidden-accessible">Password:</label>
<input type="password" name="password" id="password" placeholder="Password">
<input type="submit" id="loginButton" data-transition="flip" value="Login">
</div>
</form>
</div>
</div>
<%= partial :'frontend/footer.html' %>
<script type='application/javascript' src='assets/login_modal.js'></script>
</div>
私は単純にレンダリングしますが、Rubyトランスレータが必要です。どのようにしてこの仕事をするのか、それとももっと良いやり方をするのか?ありがとうございました...
テンプレートの外観は何ですか?レイアウトファイルを使用していますかスタンドアロンテンプレートですか? –
@maxpleanerテンプレートを追加しました。しかし問題は、bookmakr/anchorを参照する機能を提供する形式でerb templateコマンドを使用する方法です。ありがとう。 –
このメソッドを実行時にhttps://github.com/sinatra/sinatra/blob/master/lib/sinatra/base.rb#L784-L799に変更しないと、おそらく不可能です。 – aristotll