在Yii2中,使用Html::activeDropDownList,我可以用以下形式提交数据:
<?= Html::activeDropDownList($model, 'category', ArrayHelper::map($categories, 'id', 'name'), [
'multiple' => 'multiple',
'class' => 'multiselect',
]) ?>
Run Code Online (Sandbox Code Playgroud)
有没有办法在上面指定预先选择的类别?我知道可以使用Html::dropDownLost如下方式完成:
<?= Html::dropDownList('category', [1, 3, 5], ArrayHelper::map($categories, 'id', 'name'), [
'multiple' => 'multiple',
'class' => 'multiselect',
]) ?>
Run Code Online (Sandbox Code Playgroud)
但有一个权衡!没有地方可以表明这是附加到某个模型的某些数据,因为它们正在使用Html::activeDropDownList.
我找到的解决方案之一是使用ActiveForm如下:
<?= $form->field($model, 'category')
->dropDownList('category', [1, 3, 5], ArrayHelper::map($categories, 'id', 'name')
]) ?>
Run Code Online (Sandbox Code Playgroud)
我最后一个选项的问题是我无法指定html选项,如'multiple'和css,如'class'.
有关能够使用下拉列表以及指定列表是多选并具有预选值的任何帮助吗?此外,如果有人指导我到一个资源,我可以阅读何时何地选择,activeDropDownList或者dropDownList我真的很感激.
谢谢!
我有一个Windows-1256编码的文本。现在我想将文本从阿拉伯语(windows-1256)转换为utf-8
示范文本 :
Óæí Ïæã ÈíåÞí
Run Code Online (Sandbox Code Playgroud)
结果:
??? ??? ?????
Run Code Online (Sandbox Code Playgroud)
我使用此代码解码并编码为utf-8
# -*- coding: utf-8 -*-
data = "Óæí Ïæã ÈíåÞí"
print data.decode("windows-1256", "replace")
print data.encode("windows-1256")
Run Code Online (Sandbox Code Playgroud)
该代码返回以下结果:
?“?¦? ???¦?£ ?ˆ??¥???
Traceback (most recent call last):
File "mohmal2.py", line 5, in <module>
print data.encode("windows-1256")
File "/usr/lib/python2.7/encodings/cp1256.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_table)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 0: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)
我找到了可以转换此文本的网站:
我在 go lang 中获取数据库表列表 (SHOW TABLES) 时遇到问题
我用这个包
数据库/sql
gopkg.in/gorp.v1
github.com/ziutek/mymysql/godrv
并通过以下代码连接到 MYSQL:
db, err := sql.Open(
"mymysql",
"tcp:127.0.0.1:3306*test/root/root")
if err != nil {
panic(err)
}
dbmap := &DbMap{Conn:&gorp.DbMap{Db: db}}
Run Code Online (Sandbox Code Playgroud)
我使用此代码获取表格列表
result, _ := dbmap.Exec("SHOW TABLES")
Run Code Online (Sandbox Code Playgroud)
但结果是空的!