[Groonga-commit] groonga/groonga-admin at 3593bdd [master] Support output_columns

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Nov 4 14:46:16 JST 2014


Kouhei Sutou	2014-11-04 14:46:16 +0900 (Tue, 04 Nov 2014)

  New Revision: 3593bdd702592f97b4ea9961c6c9bd6592207d62
  https://github.com/groonga/groonga-admin/commit/3593bdd702592f97b4ea9961c6c9bd6592207d62

  Message:
    Support output_columns

  Modified files:
    app/scripts/controllers/table-search-controller.js
    app/views/tables/search.html

  Modified: app/scripts/controllers/table-search-controller.js (+27 -1)
===================================================================
--- app/scripts/controllers/table-search-controller.js    2014-11-04 14:33:36 +0900 (7082f55)
+++ app/scripts/controllers/table-search-controller.js    2014-11-04 14:46:16 +0900 (767b4d7)
@@ -15,6 +15,7 @@ angular.module('groongaAdminApp')
     $scope.columns = [];
     $scope.records = [];
     $scope.indexedColumns = [];
+    $scope.outputColumns = [];
     $scope.commandLine = '';
     $scope.message = '';
     $scope.elapsedTimeInMilliseconds = 0;
@@ -30,10 +31,19 @@ angular.module('groongaAdminApp')
             return indexedColumn.name;
           })
           .join(',');
+      var outputColumns = $scope.outputColumns
+          .filter(function(outputColumn) {
+            return outputColumn.inUse;
+          })
+          .map(function(outputColumn) {
+            return outputColumn.name;
+          })
+          .join(',');
       var parameters = angular.extend({},
                                       $scope.parameters,
                                       {
-                                        'match_columns': matchColumns
+                                        'match_columns':  matchColumns,
+                                        'output_columns': outputColumns
                                       });
       $location.search(parameters);
     };
@@ -69,6 +79,22 @@ angular.module('groongaAdminApp')
         });
       });
 
+    client.execute('column_list', {table: $scope.table})
+      .success(function(response) {
+        var outputColumns = $scope.parameters.output_columns;
+        console.log(response.columns());
+        response.columns().forEach(function(column) {
+          if (column.isIndex) {
+            return;
+          }
+          var inUse = true;
+          if (outputColumns) {
+            inUse = outputColumns.indexOf(column.name) !== -1;
+          }
+          $scope.outputColumns.push({name: column.name, inUse: inUse});
+        });
+      });
+
     var parameters = {
       table: $scope.table
     };

  Modified: app/views/tables/search.html (+9 -0)
===================================================================
--- app/views/tables/search.html    2014-11-04 14:33:36 +0900 (491b2be)
+++ app/views/tables/search.html    2014-11-04 14:46:16 +0900 (13ef2ba)
@@ -18,6 +18,15 @@
         <span class="input-group-addon">Query</span>
         <input type="search" class="form-control" ng-model="parameters.query">
       </div>
+      <div class="input-group">
+        <span ng-repeat="outputColumn in outputColumns track by $index">
+          <label>
+            <input type="checkbox"
+                   ng-model="outputColumn.inUse">
+            {{outputColumn.name}}
+          </label>
+        </span>
+      </div>
     </div>
     <div class="form-group">
       <button ng-click="search()" class="btn btn-default">Search</button>
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index