Насколько я знаю, что нет ничего там, которое предлагает вид опций удара свиста, которые Моно парни реализовали в их новой оболочке, но это не должно говорить, что "основной" Python интерактивная оболочка не является полным функцией и мощным приложением. Я видел что-то как оболочка C#, разрабатываемая в какой-то момент, но я думаю с сегодняшнего дня те функции, на которые Вы указываете, довольно уникальны. Можно было бы утверждать, что это вызвано тем, что никто не думал о них или, альтернативно, потому что ни у кого действительно не было потребности в них. Я склонен подписываться на последнего, хотя я предполагаю, что оба вероятны.
. СЕТЕВОЙ базовый MVC - необходимый флажок с аннотированиями данных
public class MyModel
{
[Display(Name = "Confirmation")]
[Range(typeof(bool), "true", "true", ErrorMessage = "Please check the Confirmation checkbox.")]
public bool IsConfirmed { get; set; }
}
<div class="custom-control custom-checkbox col-10">
<input type="checkbox" asp-for="IsConfirmed" class="custom-control-input" />
<label class="custom-control-label" for="IsConfirmed">
"By clicking 'submit', I confirm."
</label>
<span asp-validation-for="IsConfirmed" class="text-danger"></span>
</div>
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
<script type="text/javascript">
$(document).ready(function () {
// extend range validator method to treat checkboxes differently
var defaultRangeValidator = $.validator.methods.range;
$.validator.methods.range = function (value, element, param) {
if (element.type === 'checkbox') {
// if it's a checkbox return true if it is checked
return element.checked;
} else {
// otherwise run the default validation function
return defaultRangeValidator.call(this, value, element, param);
}
}
});
</script>