vaguely

和歌山に戻りました。ふらふらと色々なものに手を出す毎日。

2015-01-01から1ヶ月間の記事一覧

JavascriptとCSSで表示切り替えとか

前回はTabを押した時にページ遷移をして(表示される内容は変わっていませんでしたが)内容を切り替えていました。 今回は、前回作ったものに更にボタン(ラジオボタン)を追加して、非同期でコンテンツの内容を変えてみます。 やったこと ボタンを2つ追加して、…

JavascriptでTab切り替え

諸事情によりめっきりブログ作成が滞っていますが...。 今日はJavascriptとCSSを使って、Tabを切り替えてみます。 やったこと 5つのタブと左右に1つずつボタンを作成 タブのうち2つを非表示にして、左右のボタンで切り替える タブをクリックしたらページ遷移…

Ajaxに触れてみる

今回はちょっと脇道にそれて、SinatraでAjaxを試してみたお話。 はじめに ボタンを押すなど、何か操作をした場合にページ遷移せずに表示内容を変更してみたい。 ということで、jQueryを使って非同期処理をすることにしました。 今回やったこと ページ上に四…

DBに登録したSlimのコードを出力するとか

Slimのサニタイジング しばらくハマっていた、DBやController(app.rb)でSlimやHTMLのコードをviews/blog.slimで表示しようとすると、 HTMLがエスケープされてタグがそのまま表示されてしまう問題について。 結論から書くとSlimの仕様でした、という話です。 …

SinatraのPagination

Pagination 以前DBのレコード数をカウントしてそこからページャーを生成する、と書いていたのですが、実はそれを実現してくれるGemがあるとのこと。 それに気づいたのはブログ本文で改行する方法を調べていたときのこと。 下記のページで「will_paginate」が…

RSS生成とか

引き続きSinatraの話。 Blogといえば、RSS(またはAtom)配信は欲しいところ。早速調べてみました。 RSSを生成する Controllerであるapp.rb(ファイル構成などはこの辺参照)で行います。 デフォルトで用意されているライブラリ(rss/maker)を使うため、Gemfileな…

SinatraとRoute

今回はControllerに当たるapp.rbを中心とした、URLのルーティングについて。 この辺でも少し触れていましたね。 URL構成 現在の構成はこんな感じです。 localhost:9292/ --- ブログ記事の一覧を表示 localhost:9292/tag/XXX --- タグ検索の結果を表示。XXXに…

SinatraとSQLiteと 2

大晦日ハッカソン、続く正月ハッカソンで、 前回作成したプロジェクトを元にブログサイトに挑戦してみました。 sntVaguely - GitHub やっぱり時間や目標をある程度決めて開発するというのは良いもので、まだまだ課題は多いとはいえ、ブログ記事を表示する部…