Dies ist das erste Mal, dass ich das Yii2 GridView Widget verwende. Ich habe versucht, die Breite einer Spalte zu setzen, nachdem ich einige Antworten hier auf stackoverflow gelesen habe, aber es wird einfach nicht für mich funktionieren und ich würde es lieben, wenn die Spalten unterschiedliche Breiten hätten (besonders die erste).Yii2 GridView kann die Spaltenbreite nicht setzen
Ich habe versucht, die Breite mit 'contentOptions' direkt für die erste Spalte und auch mit einer externen CSS-Datei für die Spalte Produktname zu setzen.
Kann mir bitte jemand sagen, ob es eine Alternative gibt oder ob ich etwas falsch mache?
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
[
'class' => 'yii\grid\SerialColumn',
'contentOptions' => ['style' => 'max-width:20px;'],
],
[
'format' => 'raw',
'label' => 'Image',
'value' => function ($data) {
$url = $data->imgSrc;
return Html::img($url, ['width' => '40px']);
},
],
[
'attribute' => 'name',
'format' => 'raw',
'label' => 'Product name',
'contentOptions' => function ($model, $key, $index, $column) {
return ['class' => 'tbl_name'];
},
],
],
]); ?>
Dank für die schnelle Antwort danken, aber leider wird dies für mich nicht (ich habe vergessen, ich habe zu erwähnen, versuche es vorher, probier es einfach nochmal aus und ich bekomme das gleiche ergebnis) und ich verstehe wirklich nicht was das problem sein könnte. – user2997695
Es funktionierte für mich. Hast du einen Feuerwahn eingecheckt? Wird die Eigenschaft angewendet? – Chinmay
Ich denke, es ist, ich habe nur die Seitenquelle angesehen, und es schien, als ob die entsprechenden Td-Tags den Stil hinzugefügt wurden. Ich habe auch bemerkt, dass es funktioniert, wenn ich den Header-Teil des Gitters entferne, aber das war nicht das, was ich brauchte, da Sie das Horder zum Sortieren verwenden können. Am Ende, während ich das CSS für die Tabelle prüfte, bemerkte ich Layout-Tabelle: behoben und ich habe gerade eine neue Klasse für die Tabelle hinzugefügt und Layout-Tabelle gesetzt: erben. Ich weiß, es ist ein Workaround, aber es scheint so zu funktionieren, wie ich es brauche. Ich weiß immer noch nicht, warum eine der anderen Lösungen nicht funktionieren wird. Danke für die Hilfe, trotzdem! – user2997695