diff --git a/ui/src/views/compute/DeployVM.vue b/ui/src/views/compute/DeployVM.vue index 69b682c9d91..36b778b746b 100644 --- a/ui/src/views/compute/DeployVM.vue +++ b/ui/src/views/compute/DeployVM.vue @@ -288,7 +288,6 @@
0 && this.zone.securitygroupsenabled } @@ -976,9 +972,7 @@ export default { this.diskOffering = _.find(this.options.diskOfferings, (option) => option.id === instanceConfig.diskofferingid) this.zone = _.find(this.options.zones, (option) => option.id === instanceConfig.zoneid) this.affinityGroups = _.filter(this.options.affinityGroups, (option) => _.includes(instanceConfig.affinitygroupids, option.id)) - if (!this.networkId) { - this.networks = _.filter(this.options.networks, (option) => _.includes(instanceConfig.networkids, option.id)) - } + this.networks = _.filter(this.options.networks, (option) => _.includes(instanceConfig.networkids, option.id)) this.sshKeyPair = _.find(this.options.sshKeyPairs, (option) => option.name === instanceConfig.keypair) if (this.zone) { @@ -1129,15 +1123,6 @@ export default { this.form.getFieldDecorator([field], { initialValue: this.dataPreFill[field] }) }, fetchData () { - if (this.networkId) { - this.updateNetworks([this.networkId]) - this.updateDefaultNetworks(this.networkId) - this.networks = [{ - id: this.networkId, - name: this.networkName - }] - } - if (this.dataPreFill.zoneid) { this.fetchDataByZone(this.dataPreFill.zoneid) } else { @@ -1600,9 +1585,17 @@ export default { } }) - if (name === 'zones' && this.options.zones.length === 1) { - this.form.getFieldDecorator(['zoneid'], { initialValue: this.options.zones[0].id }) - this.onSelectZoneId(this.options.zones[0].id) + if (name === 'zones') { + let zoneid = '' + if (this.$route.query.zoneid) { + zoneid = this.$route.query.zoneid + } else if (this.options.zones.length === 1) { + zoneid = 'this.options.zones[0].id' + } + if (zoneid) { + this.form.getFieldDecorator(['zoneid'], { initialValue: zoneid }) + this.onSelectZoneId(zoneid) + } } }) }).catch(function (error) { @@ -1714,7 +1707,9 @@ export default { this.tabKey = 'templateid' _.each(this.params, (param, name) => { if (this.networkId && name === 'networks') { - return true + param.options = { + id: this.networkId + } } if (!('isLoad' in param) || param.isLoad) { this.fetchOptions(param, name, ['zones']) diff --git a/ui/src/views/network/VpcTiersTab.vue b/ui/src/views/network/VpcTiersTab.vue index 6ee76da73de..bfadf7581ec 100644 --- a/ui/src/views/network/VpcTiersTab.vue +++ b/ui/src/views/network/VpcTiersTab.vue @@ -67,7 +67,7 @@ type="dashed" style="margin-bottom: 15px; width: 100%" :disabled="!('deployVirtualMachine' in $store.getters.apis)" - @click="$router.push({ path: '/action/deployVirtualMachine?networkid=' + network.id + '&name=' + network.name })"> + @click="$router.push({ path: '/action/deployVirtualMachine?networkid=' + network.id + '&zoneid=' + network.zoneid })"> {{ $t('label.vm.add') }}