2016-03-22 28 views
0

Renk değişkenleri listesini içeren bir veritabanı tablomuz var (örnek HEX renk kodu). Stillerim, Gulp ve SASS kullanılarak derlenmiştir.Sunucu tarafı dilinden dinamik SASS değişkenleri

Django uygulamam veritabanımda bir satır oluşturduğunda/güncelleştirdiğinde, renkleri temel alan yeni bir stil sayfası oluşturmam gerekiyor. Bir şekilde, sunucu tarafı uygulamasından renkleri bir oluşturma işlemine almam gerekiyor.

Record with colours added -> Gulp runs -> New colour variables are used within the stylesheet generation. 

Bunun nasıl yapılabileceği hakkında bir fikriniz var mı?

sayesinde

+0

Hiçbir şey denediniz mi? *Hiçbir şey? – cimmanon

+0

Daha önce çeşitli yapım işlemleri yaptım, ancak hiçbir zaman taşımadım. Bu sorunu daha önce çözmüş olabilecek biri tarafından doğru yönde bir noktaya bakıyorum. Düzenleme - Gulp oluşturma işleminde çeşitli veri toplama teknikleri gördüm, ancak hiçbiri modele uymuyor. Gulp verileri daha umut verici. – Lee

cevap

1

ben bu sorunu çözmüş bir bağlam dizi çekmek ve küstahlık süreci dolmadan değişkenler yerine gulp-preprocess adında bir modül vardır

.. İdeal bir şekilde daha az ..

Örneğin:

SUKDÖ'nün File

$body-background: '/* @echo body-background */'; 

body { 
    background: $body-background; 
} 

GULP

var data = { 
    '1': { 
     'body-background': '#f00', 
    }, 
    '2': { 
     'body-background': '#ffffff', 
    } 
} 

gulp.task('scss', function() { 

    for (var partner_id in data) { 
     if (!data.hasOwnProperty(partner_id)) continue; 
     var partner_data = data[partner_id] 

     gulp.src('./static/scss/*.scss') 
      .pipe($.sourcemaps.init()) 
      .pipe($.preprocess({context: partner_data})) 
      .pipe($.sass({ 
        errLogToConsole: true, 
        style: 'compact' 
       }) 
       .on('error', function (err) { 
        console.log('Error:', err); 
        this.emit('end'); 
       })) 
      .pipe($.autoprefixer({cascade: false})) 
      .pipe($.cssnano()) 
      .pipe($.sourcemaps.write('./maps')) 
      .pipe(gulp.dest('./static/css/'+ partner_id)) 
    } 
}); 
0

ben size SUKDÖ dosyalarından birden çok tema oluşturmanızı sağlar bu hizmetin https://www.grooveui.com, rastladı.

SASS dosyalarınızı yanınızda bulundurmanız gereken tek şey. Sonra yeni temalar oluşturabilir ve değişken değerler ayarlayabilirsiniz. Değişkenleri depolamak ve birden çok SASS dosyası oluşturmak için veritabanı kullanıyorlar.

Denemeye değer olabilir.

İlgili konular