結構な頻度で書く依存型セレクトボックス。毎回自力で書いてるような気がするのでログしておく。
<div class="field">
<%= form.label :region %>
<%= form.select :region, options_for_select([
'us-west-2',
'us-west-1',
'us-east-2',
'us-east-1',
'ap-south-1',
'ap-northeast-2',
'ap-southeast-1',
'ap-southeast-2',
'ap-northeast-1',
'ca-central-1',
'cn-north-1',
'eu-central-1',
'eu-west-1',
'eu-west-2',
'eu-west-3',
'sa-east-1'
]), {include_blank: true}, required: true %>
</div>
<div class="field">
<%= form.label :availability_zone %>
<%= form.select :availability_zone, {}, required: true %>
</div>
<script>
$("#storage_region").change(function(){
var region = $(this).val();
var $saz = $('#storage_availability_zone');
$.get("/api/v1/aws_availability_zones?region="+region, function(zones){
$saz.empty();
zones.forEach(function(zone){
$('<option>').val(zone).text(zone).appendTo($saz)
})
});
})
</script>