我有一个登录表单,我可以发布我的表单值.在成功发出POST请求后,我从API返回了身份验证令牌.我需要保存此令牌以供将来在某些本地存储中引用.为了保存此身份验证令牌,我使用的是AsyncStorage.我使用AsyncStorage.setItem(STORAGE_KEY, responseData.auth_token);setItem方法来保存数据.
如果我通过控制台登录:
console.log(AsyncStorage.setItem(STORAGE_KEY));
它像这样返回promise对象
Promise {_45: 0, _81: 0, _65: null, _54: null}
_45
:
0
_54
:
null
_65
:
"efcc06f00eeec0b529b8"
_81
:
1
__proto__
Run Code Online (Sandbox Code Playgroud)
:对象
如何从AsyncStorage.getItem方法中获取确切的值?
这是我的获取方法
fetch('http://54.255.201.241/drivers', {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
first_name: this.state.firstName,
mobile_number: this.state.mobileNumber,
vehicle_number: this.state.vehicleNumber,
vehicle_type_id: 1,
})
}).then((response) => response.json()).then((responseData) => {
if (JSON.stringify(responseData.mobile_number) == (this.state.mobileNumber))
{
AsyncStorage.setItem(STORAGE_KEY, responseData.auth_token);
console.log(AsyncStorage.getItem(STORAGE_KEY));
this.props.navigator.push({id: 'Otp'})
}
else
{
Alert.alert("SignUp Failed","Mobile number already taken.")
}
})
.done(); …Run Code Online (Sandbox Code Playgroud) 在我的项目中,功能之一是将数据导出为 CSV。
我在模型中编写了一个函数来执行此操作,该函数运行良好,但如果我想在同一个 CSV 文件中导出关联的模型值怎么办?
我尝试了多种方法但没有成功。
产品.rb:
has_many :product_other_informations
def self.to_csv
CSV.generate do |csv|
csv << ["Name", "Description", "Tags", "Meta_keywords", "Page_title", "Meta_description", "Slug", "Published_status", "Other_information", "Other_information_value"]
all.each do |product|
csv << [product.name, product.description, product.tags, product.meta_keywords, product.page_title, product.meta_description, product.slug, product.is_published]
end
end
end
Run Code Online (Sandbox Code Playgroud)
这仅用于导出产品值。如果我想在同一个 CSV 中导出“产品其他信息”模型值,该怎么办?
我正在使用 ruby on Rails 构建一个示例电子商务应用程序。我的控制器名称之一是“products_controller”。该控制器也作为嵌套控制器放置在内部。这些控制器内的操作是相同的。我们如何表示这些操作而不需要重复代码。下面给出了代码示例。
应用程序/控制器/products_controller.rb
def index
@product = Product.all
@vari = @products.variants
.............
.............
end
Run Code Online (Sandbox Code Playgroud)
应用程序/控制器/master_admins/products_controller.rb
def index
@product = Product.all
@vari = @products.variants
.............
.............
end
Run Code Online (Sandbox Code Playgroud)
应用程序/控制器/master_admins/properties_controller.rb
def product
@product = Product.all
@vari = @products.variants
.............
.............
end
Run Code Online (Sandbox Code Playgroud)
上面的动作包含相同的一组代码。我们如何重构它以使代码不重复。
提前致谢....
ruby ×2
asyncstorage ×1
csv ×1
javascript ×1
promise ×1
react-native ×1
refactoring ×1
ruby-2.2 ×1