Advertisement
Zuhairy_Harry

Firestore Flutter

Feb 7th, 2025
583
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Dart 2.44 KB | None | 0 0
  1.  
  2. String _username = "";
  3. String _age = "";
  4. final TextEditingController _usernameController = new TextEditingController();
  5. final TextEditingController _ageController = new TextEditingController();
  6.  
  7. Widget build(BuildContext context){
  8.     return Scaffold(
  9.         body: Center(
  10.             child: Column(
  11.                 children [
  12.                     TextField(
  13.                         controller: _usernameController,
  14.                         decoration: const InputDecoration(
  15.                             label: Text('Input Username'),
  16.                         )
  17.                     ),
  18.                     SizedBox(height: 10),
  19.                     ElevatedButton(
  20.                         onPressed: sendDatatoFirestore,
  21.                         child: Text('Submit');
  22.                     ),
  23.                     SizedBox(height: 10),
  24.                     TextField(
  25.                         controller: _ageController,
  26.                         decoration: const InputDecoration(
  27.                             label: Text('Input Age'),
  28.                         )
  29.                     ),
  30.                 ]
  31.             )
  32.         ),
  33.     )
  34. }
  35.  
  36. void sendDatatoFirestore(){
  37.  
  38.     _username = _usernameController.text;
  39.     _age = _ageController.text;
  40.  
  41.     int age;
  42.  
  43.     age = try.parseInt(_age);
  44.  
  45. _firestore.collection("users").add({
  46.     'username': _username,
  47.     'age': age,
  48.     'createdAt': FieldValue.serverTimestamp(),
  49.  
  50. }).then((docRef){
  51.     ScaffoldMessenger.of(context).showSnackBar(
  52.         SnackBar(content: Text("Data sent successfully! ID: ${docRef.id}")),
  53.       );
  54. }).catchError((error){
  55.  
  56. });
  57.  
  58. }
  59.  
  60.  
  61.  
  62.  
  63. @override
  64.   Widget build(BuildContext context) {
  65.     return Scaffold(
  66.       appBar: AppBar(title: Text("Firestore Snapshot Example")),
  67.       body: StreamBuilder<QuerySnapshot>(
  68.         stream: FirebaseFirestore.instance.collection('users').snapshots(),
  69.         builder: (context, snapshot) {
  70.           if (!snapshot.hasData) {
  71.             return Center(child: CircularProgressIndicator()); // Show loading
  72.           }
  73.  
  74.           var users = snapshot.data!.docs;
  75.  
  76.           return ListView.builder(
  77.             itemCount: users.length,
  78.             itemBuilder: (context, index) {
  79.               var user = users[index];
  80.               return ListTile(
  81.                 title: Text(user['name']),
  82.                 subtitle: Text("Age: ${user['age']}"),
  83.               );
  84.             },
  85.           );
  86.         },
  87.       ),
  88.     );
  89.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement