Ruby on rails初心者です。

Linux環境上で、railsのプログラミングをしているのですがわからないことがあり
教えてください。
データ(※)が定期的に蓄積されているような状況で、定期的に蓄積しているデータとは別に
ユーザがWeb上から入力した情報で蓄積したデータを取得するようなことをしたい。
(※)xxx/db/development.sqlite3

具体的に以下でご説明します。

<やりたい事>
①データベース上には数秒間隔でデータが蓄積されている。
②Web上からユーザに何分前のデータが欲しいか数字を入力
 → 例えばユーザが5を選択
③データベース上、直近のデータからユーザが指定した時間(例では5分前までのデータ)
 までのデータ取り出す

<現状自分で解決できていない事>
ユーザから入力された変数をcontrollersに持ってくるところはできているのですが、
この変数を使って以前のデータを取ってくることができていません。


例えば5分前のデータを持ってくるようなケースでは以下のようなコーディングで
取得できることはわかりました。

from = 5.minutes.ago → ★
to = Time.now
hoge = DataClass.where(created_at: from..to).where(dataname: 1).count
→ 「created_atの中で現時刻から5分前に遡って、datanameが1のデータの数を数える。」
  というコーディング。

データ取得の範囲が5分と決まっていればこれでいいのですが、何分前のデータかを
ユーザが決められるようにしたいのです。

 仮にユーザが入力したデータを"hogedata"としてviewsからPOSTすることでcontrollersに
 データを渡すことができることまではわかりました。
 以下、viewsからPOSTされcontrollersで取得する際のコーディング例です。

hogeid = Rangearrow.maximum(:id) ← ユーザが入力した最後のIDを取得。
hogedata = Dataclass.where("id = ?",hogeid).pluck(:userdata) ← hogeidと同様のデータから欲しいデータ(userdata)を取得しhogedataとして保存。
 ※userdataがデータベース上の変数名

 このhogedataで指定された範囲のデータを取得したいのですが、
 ★のイメージでいくと hogedata.minutes.ago とやるとエラーが出てしまいます。

 変数の使い方が分かっていないのも理由かもしれませんが、Webを見ても解決できていない状況です。
 特にやり方にはこだわらない(xx.minutes.agoでなくてもいい)のでユーザが入力したデータを
 使ってデータベースのデータを範囲分取得する方法を教えてください。