Rubyの経験はあまりありません。ファイルシステムではなくデータベースからsassを@インポートしたい。オンラインで例は見つかりませんでした。これをどのように実装すればよいですか。インポータークラスを拡張する必要があるようですが、rubyを理解していないため、ファイルシステムのどこにこのクラスが存在するか(チェックアウトするだけです)、一般的には基本的な手順を知る必要があります。
詳しくは
MySQLデータベースにはsassコンテンツが含まれています。したがって、私のWebアプリケーションでは、ユーザーからsass(文字列として)を受け入れます。これには、たとえば次のようなインポートステートメントが含まれている可能性があります。
@import test.scss
body { color:red }
これで、MySQLDBに次のようなものが表示されます
Table sass_files
column_name filename | content
example row test.scss | p {color:blue;}
このインポートを機能させたいのですが、正規表現の一致を実行してユーザー入力からファイル名を取得し、そのファイル名でDBにクエリを実行して、コンテンツを取得できることを確認します。しかし、ruby/sassにファイルシステムの代わりにロードパスとしてDBを使用させる良い方法があることを読みました。
アップデート
だから私はfindメソッドを使ってダミーのカスタムインポータークラスを作成しました
def find(name, options)
Sass::Engine.new("p { color :blue; }", options)
end
このインポーターをrubyを使用せずにsassロードパスに追加するにはどうすればよいですか?たとえば、sass gemフォルダー内のソースファイルに変更を加えて、このインポーターをlib / sass / importersに追加できますか?
ありがとう